diff --git a/.github/skip_nf_test.json b/.github/skip_nf_test.json index 47336236310..01e2c6712bc 100644 --- a/.github/skip_nf_test.json +++ b/.github/skip_nf_test.json @@ -86,6 +86,8 @@ "docker_self_hosted": ["modules/nf-core/parabricks"], "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" diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 7e3c53763cc..a343cc64bf8 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -93,7 +93,7 @@ jobs: echo ${{ steps.module_names.outputs.result }} nf-core-lint-modules: - runs-on: ${{ github.event.inputs.runners || 'self-hosted' }} + runs-on: ${{ github.event.inputs.runners || 'ubuntu-latest' }} name: nf-core lint modules needs: nf-core-changes if: ${{ (needs.nf-core-changes.outputs.modules == 'true') }} diff --git a/.github/workflows/nf-test.yml b/.github/workflows/nf-test.yml index ebfdedd2019..9774004aa51 100644 --- a/.github/workflows/nf-test.yml +++ b/.github/workflows/nf-test.yml @@ -75,7 +75,7 @@ jobs: echo ${{ steps.outputs.outputs.modules }} echo ${{ steps.outputs.outputs.subworkflows }} nf-test: - runs-on: ${{ github.event.inputs.runners || 'self-hosted' }} + runs-on: ${{ github.event.inputs.runners || 'ubuntu-latest' }} name: "Test | ${{ matrix.profile }} | ${{ matrix.shard }}" needs: nf-test-changes if: ${{ needs.nf-test-changes.outputs.modules != '[]' || needs.nf-test-changes.outputs.subworkflows != '[]' }} diff --git a/.github/workflows/pytest-workflow.yml b/.github/workflows/pytest-workflow.yml index f61541dc9ab..0540ddf7940 100644 --- a/.github/workflows/pytest-workflow.yml +++ b/.github/workflows/pytest-workflow.yml @@ -62,7 +62,7 @@ jobs: echo ${{ steps.tags.outputs.subworkflows }} pytest: - runs-on: ${{ github.event.inputs.runners || 'self-hosted' }} + runs-on: ${{ github.event.inputs.runners || 'ubuntu-latest' }} name: pytest needs: [pytest-changes] if: needs.pytest-changes.outputs.tags != '[]' diff --git a/modules/nf-core/agat/convertbed2gff/environment.yml b/modules/nf-core/agat/convertbed2gff/environment.yml new file mode 100644 index 00000000000..2c3daab3437 --- /dev/null +++ b/modules/nf-core/agat/convertbed2gff/environment.yml @@ -0,0 +1,7 @@ +--- +# yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json +channels: + - conda-forge + - bioconda +dependencies: + - "bioconda::agat=1.4.2" diff --git a/modules/nf-core/agat/convertbed2gff/main.nf b/modules/nf-core/agat/convertbed2gff/main.nf new file mode 100644 index 00000000000..2ce3e67d5b5 --- /dev/null +++ b/modules/nf-core/agat/convertbed2gff/main.nf @@ -0,0 +1,45 @@ +process AGAT_CONVERTBED2GFF { + tag "$meta.id" + label 'process_single' + + conda "${moduleDir}/environment.yml" + container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? + 'https://depot.galaxyproject.org/singularity/agat:1.4.2--pl5321hdfd78af_0' : + 'biocontainers/agat:1.4.2--pl5321hdfd78af_0' }" + + input: + tuple val(meta), path(bed) + + output: + tuple val(meta), path("*.gff") , emit: gff + 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}" + """ + agat_convert_bed2gff.pl \\ + --bed $bed \\ + --output ${prefix}.gff \\ + $args + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + agat: \$(agat_convert_bed2gff.pl --help | sed -n 's/.*(AGAT) - Version: \\(.*\\) .*/\\1/p') + END_VERSIONS + """ + + stub: + def prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.gff + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + agat: \$(agat_convert_bed2gff.pl --help | sed -n 's/.*(AGAT) - Version: \\(.*\\) .*/\\1/p') + END_VERSIONS + """ +} diff --git a/modules/nf-core/agat/convertbed2gff/meta.yml b/modules/nf-core/agat/convertbed2gff/meta.yml new file mode 100644 index 00000000000..57bd3d34227 --- /dev/null +++ b/modules/nf-core/agat/convertbed2gff/meta.yml @@ -0,0 +1,49 @@ +--- +# yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/meta-schema.json +name: agat_convertbed2gff +description: | + Takes a bed12 file and converts to a GFF3 file +keywords: + - genome + - bed + - gff + - conversion +tools: + - agat: + description: "AGAT is a toolkit for manipulation and getting information from + GFF/GTF files" + homepage: "https://github.com/NBISweden/AGAT" + documentation: "https://agat.readthedocs.io/" + tool_dev_url: "https://github.com/NBISweden/AGAT" + doi: "10.5281/zenodo.3552717" + licence: ["GPL v3"] + identifier: biotools:AGAT +input: + - - meta: + type: map + description: | + Groovy Map containing sample information + e.g. [ id:'test', single_end:false ] + - bed: + type: file + description: Input bed12 file + pattern: "*.bed" +output: + - gff: + - meta: + type: map + description: Groovy Map containing sample information + - "*.gff": + type: file + description: Output GFF3 file + pattern: "*.{gff}" + - versions: + - versions.yml: + type: file + description: File containing software versions + pattern: "versions.yml" + +authors: + - "@GallVp" +maintainers: + - "@GallVp" diff --git a/modules/nf-core/agat/convertbed2gff/tests/main.nf.test b/modules/nf-core/agat/convertbed2gff/tests/main.nf.test new file mode 100644 index 00000000000..1799dab28c4 --- /dev/null +++ b/modules/nf-core/agat/convertbed2gff/tests/main.nf.test @@ -0,0 +1,58 @@ +nextflow_process { + + name "Test Process AGAT_CONVERTBED2GFF" + script "../main.nf" + process "AGAT_CONVERTBED2GFF" + + tag "modules" + tag "modules_nfcore" + tag "agat" + tag "agat/convertbed2gff" + + test("sarscov2 - bed12") { + + when { + process { + """ + input[0] = [ + [ id:'test' ], // meta map + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/bed/test.bed12', checkIfExists: true) + ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + + test("sarscov2 - bam - stub") { + + options "-stub" + + when { + process { + """ + input[0] = [ + [ id:'test', single_end:false ], // meta map + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/bed/test.bed12', checkIfExists: true) + ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + +} \ No newline at end of file diff --git a/modules/nf-core/agat/convertbed2gff/tests/main.nf.test.snap b/modules/nf-core/agat/convertbed2gff/tests/main.nf.test.snap new file mode 100644 index 00000000000..4ecc20d7676 --- /dev/null +++ b/modules/nf-core/agat/convertbed2gff/tests/main.nf.test.snap @@ -0,0 +1,70 @@ +{ + "sarscov2 - bam - stub": { + "content": [ + { + "0": [ + [ + { + "id": "test", + "single_end": false + }, + "test.gff:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,ccfb13a5b261f660922e1ed845e68cbc" + ], + "gff": [ + [ + { + "id": "test", + "single_end": false + }, + "test.gff:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,ccfb13a5b261f660922e1ed845e68cbc" + ] + } + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-15T14:02:09.48826" + }, + "sarscov2 - bed12": { + "content": [ + { + "0": [ + [ + { + "id": "test" + }, + "test.gff:md5,4e5a23a6babac6d5b1bcfa06c5b12518" + ] + ], + "1": [ + "versions.yml:md5,ccfb13a5b261f660922e1ed845e68cbc" + ], + "gff": [ + [ + { + "id": "test" + }, + "test.gff:md5,4e5a23a6babac6d5b1bcfa06c5b12518" + ] + ], + "versions": [ + "versions.yml:md5,ccfb13a5b261f660922e1ed845e68cbc" + ] + } + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-15T14:02:03.549345" + } +} \ No newline at end of file diff --git a/modules/nf-core/agat/convertspgff2gtf/environment.yml b/modules/nf-core/agat/convertspgff2gtf/environment.yml index 0410ee765ea..d9cd916872b 100644 --- a/modules/nf-core/agat/convertspgff2gtf/environment.yml +++ b/modules/nf-core/agat/convertspgff2gtf/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::agat=1.4.0 + - bioconda::agat=1.4.2 diff --git a/modules/nf-core/agat/convertspgff2gtf/main.nf b/modules/nf-core/agat/convertspgff2gtf/main.nf index 38af025ea16..95824ea2a53 100644 --- a/modules/nf-core/agat/convertspgff2gtf/main.nf +++ b/modules/nf-core/agat/convertspgff2gtf/main.nf @@ -4,8 +4,8 @@ process AGAT_CONVERTSPGFF2GTF { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/agat:1.4.0--pl5321hdfd78af_0' : - 'biocontainers/agat:1.4.0--pl5321hdfd78af_0' }" + 'https://depot.galaxyproject.org/singularity/agat:1.4.2--pl5321hdfd78af_0' : + 'biocontainers/agat:1.4.2--pl5321hdfd78af_0' }" input: tuple val(meta), path(gff) @@ -34,7 +34,6 @@ process AGAT_CONVERTSPGFF2GTF { """ stub: - def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" """ touch ${prefix}.agat.gtf diff --git a/modules/nf-core/agat/convertspgff2gtf/tests/main.nf.test.snap b/modules/nf-core/agat/convertspgff2gtf/tests/main.nf.test.snap index 4088c71d73f..3ca3fa4439a 100644 --- a/modules/nf-core/agat/convertspgff2gtf/tests/main.nf.test.snap +++ b/modules/nf-core/agat/convertspgff2gtf/tests/main.nf.test.snap @@ -4,14 +4,14 @@ [ "test.agat.gtf", "genome.gff3.agat.log", - "versions.yml:md5,dcc621fac77aa683287f6a0d61e10395" + "versions.yml:md5,8a5591085d36637f9378c24a7607d623" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:05:11.177573" + "timestamp": "2025-01-15T13:13:37.584076" }, "sarscov2 - genome [gff3]": { "content": [ @@ -24,13 +24,13 @@ ] ], [ - "versions.yml:md5,dcc621fac77aa683287f6a0d61e10395" + "versions.yml:md5,8a5591085d36637f9378c24a7607d623" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:05:06.695419" + "timestamp": "2025-01-15T13:13:31.491648" } } \ No newline at end of file diff --git a/modules/nf-core/agat/convertspgff2tsv/environment.yml b/modules/nf-core/agat/convertspgff2tsv/environment.yml index 0410ee765ea..d9cd916872b 100644 --- a/modules/nf-core/agat/convertspgff2tsv/environment.yml +++ b/modules/nf-core/agat/convertspgff2tsv/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::agat=1.4.0 + - bioconda::agat=1.4.2 diff --git a/modules/nf-core/agat/convertspgff2tsv/main.nf b/modules/nf-core/agat/convertspgff2tsv/main.nf index a6f73b6c1e7..772c7bd0b8e 100644 --- a/modules/nf-core/agat/convertspgff2tsv/main.nf +++ b/modules/nf-core/agat/convertspgff2tsv/main.nf @@ -4,8 +4,8 @@ process AGAT_CONVERTSPGFF2TSV { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/agat:1.4.0--pl5321hdfd78af_0' : - 'biocontainers/agat:1.4.0--pl5321hdfd78af_0' }" + 'https://depot.galaxyproject.org/singularity/agat:1.4.2--pl5321hdfd78af_0' : + 'biocontainers/agat:1.4.2--pl5321hdfd78af_0' }" input: tuple val(meta), path(gff) @@ -33,7 +33,6 @@ process AGAT_CONVERTSPGFF2TSV { """ stub: - def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" """ touch ${prefix}.tsv diff --git a/modules/nf-core/agat/convertspgff2tsv/tests/main.nf.test.snap b/modules/nf-core/agat/convertspgff2tsv/tests/main.nf.test.snap index 71ed6205cb1..50a428d6214 100644 --- a/modules/nf-core/agat/convertspgff2tsv/tests/main.nf.test.snap +++ b/modules/nf-core/agat/convertspgff2tsv/tests/main.nf.test.snap @@ -3,14 +3,14 @@ "content": [ [ "test.tsv", - "versions.yml:md5,b81565a6ff8911848806128b3bec8508" + "versions.yml:md5,1866660991c9d87acc28236b9d026438" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:06:55.853319" + "timestamp": "2025-01-15T13:13:51.099041" }, "sarscov2 - genome [gff3]": { "content": [ @@ -24,7 +24,7 @@ ] ], "1": [ - "versions.yml:md5,b81565a6ff8911848806128b3bec8508" + "versions.yml:md5,1866660991c9d87acc28236b9d026438" ], "tsv": [ [ @@ -35,14 +35,14 @@ ] ], "versions": [ - "versions.yml:md5,b81565a6ff8911848806128b3bec8508" + "versions.yml:md5,1866660991c9d87acc28236b9d026438" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:06:51.415395" + "timestamp": "2025-01-15T13:13:44.904263" } } \ No newline at end of file diff --git a/modules/nf-core/agat/convertspgxf2gxf/environment.yml b/modules/nf-core/agat/convertspgxf2gxf/environment.yml index 0410ee765ea..d9cd916872b 100644 --- a/modules/nf-core/agat/convertspgxf2gxf/environment.yml +++ b/modules/nf-core/agat/convertspgxf2gxf/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::agat=1.4.0 + - bioconda::agat=1.4.2 diff --git a/modules/nf-core/agat/convertspgxf2gxf/main.nf b/modules/nf-core/agat/convertspgxf2gxf/main.nf index b9a766830f7..6f1037a4e16 100644 --- a/modules/nf-core/agat/convertspgxf2gxf/main.nf +++ b/modules/nf-core/agat/convertspgxf2gxf/main.nf @@ -4,8 +4,8 @@ process AGAT_CONVERTSPGXF2GXF { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/agat:1.4.0--pl5321hdfd78af_0' : - 'biocontainers/agat:1.4.0--pl5321hdfd78af_0' }" + 'https://depot.galaxyproject.org/singularity/agat:1.4.2--pl5321hdfd78af_0' : + 'biocontainers/agat:1.4.2--pl5321hdfd78af_0' }" input: tuple val(meta), path(gxf) @@ -34,7 +34,6 @@ process AGAT_CONVERTSPGXF2GXF { """ stub: - def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" """ touch ${prefix}.agat.gff diff --git a/modules/nf-core/agat/convertspgxf2gxf/tests/main.nf.test.snap b/modules/nf-core/agat/convertspgxf2gxf/tests/main.nf.test.snap index e89073f811a..334d4e7e29f 100644 --- a/modules/nf-core/agat/convertspgxf2gxf/tests/main.nf.test.snap +++ b/modules/nf-core/agat/convertspgxf2gxf/tests/main.nf.test.snap @@ -19,7 +19,7 @@ ] ], "2": [ - "versions.yml:md5,5ec6166c5c080ec4bc08a8fe55ada486" + "versions.yml:md5,f4b53c6032beda5caba586595bf2d411" ], "log": [ [ @@ -38,15 +38,15 @@ ] ], "versions": [ - "versions.yml:md5,5ec6166c5c080ec4bc08a8fe55ada486" + "versions.yml:md5,f4b53c6032beda5caba586595bf2d411" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-04-12T12:25:34.583294" + "timestamp": "2025-01-15T13:14:06.098295" }, "sarscov2 genome [gtf]": { "content": [ @@ -59,13 +59,13 @@ ] ], [ - "versions.yml:md5,5ec6166c5c080ec4bc08a8fe55ada486" + "versions.yml:md5,f4b53c6032beda5caba586595bf2d411" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-04-12T12:21:21.310464" + "timestamp": "2025-01-15T13:13:59.530345" } } \ No newline at end of file diff --git a/modules/nf-core/agat/spaddintrons/environment.yml b/modules/nf-core/agat/spaddintrons/environment.yml index dabc642a1b4..9c14047a91d 100644 --- a/modules/nf-core/agat/spaddintrons/environment.yml +++ b/modules/nf-core/agat/spaddintrons/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - "bioconda::agat=1.4.0" + - "bioconda::agat=1.4.2" diff --git a/modules/nf-core/agat/spaddintrons/main.nf b/modules/nf-core/agat/spaddintrons/main.nf index 3db8a4391c9..eaa194e0c28 100644 --- a/modules/nf-core/agat/spaddintrons/main.nf +++ b/modules/nf-core/agat/spaddintrons/main.nf @@ -4,8 +4,8 @@ process AGAT_SPADDINTRONS { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/agat:1.4.0--pl5321hdfd78af_0': - 'biocontainers/agat:1.4.0--pl5321hdfd78af_0' }" + 'https://depot.galaxyproject.org/singularity/agat:1.4.2--pl5321hdfd78af_0': + 'biocontainers/agat:1.4.2--pl5321hdfd78af_0' }" input: tuple val(meta), path(gff) @@ -37,7 +37,6 @@ process AGAT_SPADDINTRONS { """ stub: - def args = task.ext.args ?: '' def prefix = meta.id ?: gff.getBaseName() output = "${prefix}.intron.gff" """ diff --git a/modules/nf-core/agat/spaddintrons/tests/main.nf.test.snap b/modules/nf-core/agat/spaddintrons/tests/main.nf.test.snap index 6420079dc0f..5e1e9b63ee9 100644 --- a/modules/nf-core/agat/spaddintrons/tests/main.nf.test.snap +++ b/modules/nf-core/agat/spaddintrons/tests/main.nf.test.snap @@ -7,42 +7,42 @@ { "id": "test" }, - "test.intron.gff:md5,d615a6dc3f54170198d585aea70f1834" + "test.intron.gff:md5,ce2e3c8d3e26d4676eb3474868134546" ] ], "1": [ - "versions.yml:md5,480dfe983a8b4469c1dff8b7a08d855d" + "versions.yml:md5,b2765a6bc10652f833965c022b025370" ], "gff": [ [ { "id": "test" }, - "test.intron.gff:md5,d615a6dc3f54170198d585aea70f1834" + "test.intron.gff:md5,ce2e3c8d3e26d4676eb3474868134546" ] ], "versions": [ - "versions.yml:md5,480dfe983a8b4469c1dff8b7a08d855d" + "versions.yml:md5,b2765a6bc10652f833965c022b025370" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:12:48.106654" + "timestamp": "2025-01-15T13:14:14.622685" }, "homo_sapiens - gtf - stub": { "content": [ [ "test.intron.gff", - "versions.yml:md5,480dfe983a8b4469c1dff8b7a08d855d" + "versions.yml:md5,b2765a6bc10652f833965c022b025370" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:12:52.535167" + "timestamp": "2025-01-15T13:14:21.098429" } } \ No newline at end of file diff --git a/modules/nf-core/agat/spfilterfeaturefromkilllist/environment.yml b/modules/nf-core/agat/spfilterfeaturefromkilllist/environment.yml index a6b5f2b9aa1..2c3daab3437 100644 --- a/modules/nf-core/agat/spfilterfeaturefromkilllist/environment.yml +++ b/modules/nf-core/agat/spfilterfeaturefromkilllist/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - "bioconda::agat=1.4.0" + - "bioconda::agat=1.4.2" diff --git a/modules/nf-core/agat/spfilterfeaturefromkilllist/main.nf b/modules/nf-core/agat/spfilterfeaturefromkilllist/main.nf index 4918ed7f340..3d2d59edb79 100644 --- a/modules/nf-core/agat/spfilterfeaturefromkilllist/main.nf +++ b/modules/nf-core/agat/spfilterfeaturefromkilllist/main.nf @@ -4,8 +4,8 @@ process AGAT_SPFILTERFEATUREFROMKILLLIST { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/agat:1.4.0--pl5321hdfd78af_0': - 'biocontainers/agat:1.4.0--pl5321hdfd78af_0' }" + 'https://depot.galaxyproject.org/singularity/agat:1.4.2--pl5321hdfd78af_0': + 'biocontainers/agat:1.4.2--pl5321hdfd78af_0' }" input: tuple val(meta), path(gff) @@ -39,7 +39,6 @@ process AGAT_SPFILTERFEATUREFROMKILLLIST { """ stub: - def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" if( "$gff" == "${prefix}.gff" ) error "Input and output names are the same, use \"task.ext.prefix\" to disambiguate!" """ diff --git a/modules/nf-core/agat/spfilterfeaturefromkilllist/tests/main.nf.test b/modules/nf-core/agat/spfilterfeaturefromkilllist/tests/main.nf.test index 82a3c307413..508c7c69f3c 100644 --- a/modules/nf-core/agat/spfilterfeaturefromkilllist/tests/main.nf.test +++ b/modules/nf-core/agat/spfilterfeaturefromkilllist/tests/main.nf.test @@ -55,7 +55,7 @@ nextflow_process { input[1] = kill_list_file.toPath() - input[2] = file(params.modules_testdata_base_path + 'generic/config/agat_config.yaml', checkIfExists: true) + input[2] = file('https://raw.githubusercontent.com/NBISweden/AGAT/refs/tags/v1.4.2/share/agat_config.yaml', checkIfExists: true) """ } } diff --git a/modules/nf-core/agat/spfilterfeaturefromkilllist/tests/main.nf.test.snap b/modules/nf-core/agat/spfilterfeaturefromkilllist/tests/main.nf.test.snap index 8322d0fd864..9d75f252ac4 100644 --- a/modules/nf-core/agat/spfilterfeaturefromkilllist/tests/main.nf.test.snap +++ b/modules/nf-core/agat/spfilterfeaturefromkilllist/tests/main.nf.test.snap @@ -11,7 +11,7 @@ ] ], "1": [ - "versions.yml:md5,e2962240799182aee69421c746be183a" + "versions.yml:md5,e71e26bc3059f3ebd8e3d49369c47f80" ], "gff": [ [ @@ -22,15 +22,15 @@ ] ], "versions": [ - "versions.yml:md5,e2962240799182aee69421c746be183a" + "versions.yml:md5,e71e26bc3059f3ebd8e3d49369c47f80" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.2" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-07-03T15:32:54.707393" + "timestamp": "2025-01-15T13:19:40.478556" }, "sarscov2 - gff3 - stub": { "content": [ @@ -44,7 +44,7 @@ ] ], "1": [ - "versions.yml:md5,e2962240799182aee69421c746be183a" + "versions.yml:md5,e71e26bc3059f3ebd8e3d49369c47f80" ], "gff": [ [ @@ -55,15 +55,15 @@ ] ], "versions": [ - "versions.yml:md5,e2962240799182aee69421c746be183a" + "versions.yml:md5,e71e26bc3059f3ebd8e3d49369c47f80" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.2" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-07-03T15:32:59.888053" + "timestamp": "2025-01-15T13:14:42.081828" }, "sarscov2 - gff3": { "content": [ @@ -77,7 +77,7 @@ ] ], "1": [ - "versions.yml:md5,e2962240799182aee69421c746be183a" + "versions.yml:md5,e71e26bc3059f3ebd8e3d49369c47f80" ], "gff": [ [ @@ -88,14 +88,14 @@ ] ], "versions": [ - "versions.yml:md5,e2962240799182aee69421c746be183a" + "versions.yml:md5,e71e26bc3059f3ebd8e3d49369c47f80" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.2" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-07-03T15:32:47.772624" + "timestamp": "2025-01-15T13:14:28.632249" } } \ No newline at end of file diff --git a/modules/nf-core/agat/spmergeannotations/environment.yml b/modules/nf-core/agat/spmergeannotations/environment.yml index a6b5f2b9aa1..2c3daab3437 100644 --- a/modules/nf-core/agat/spmergeannotations/environment.yml +++ b/modules/nf-core/agat/spmergeannotations/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - "bioconda::agat=1.4.0" + - "bioconda::agat=1.4.2" diff --git a/modules/nf-core/agat/spmergeannotations/main.nf b/modules/nf-core/agat/spmergeannotations/main.nf index e0861c08095..658b7a64ec7 100644 --- a/modules/nf-core/agat/spmergeannotations/main.nf +++ b/modules/nf-core/agat/spmergeannotations/main.nf @@ -4,8 +4,8 @@ process AGAT_SPMERGEANNOTATIONS { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/agat:1.4.0--pl5321hdfd78af_0': - 'biocontainers/agat:1.4.0--pl5321hdfd78af_0' }" + 'https://depot.galaxyproject.org/singularity/agat:1.4.2--pl5321hdfd78af_0': + 'biocontainers/agat:1.4.2--pl5321hdfd78af_0' }" input: tuple val(meta), path(gffs) diff --git a/modules/nf-core/agat/spmergeannotations/tests/main.nf.test b/modules/nf-core/agat/spmergeannotations/tests/main.nf.test index 3f500fa875f..7e9c311de87 100644 --- a/modules/nf-core/agat/spmergeannotations/tests/main.nf.test +++ b/modules/nf-core/agat/spmergeannotations/tests/main.nf.test @@ -82,7 +82,7 @@ nextflow_process { ] ] - input[1] = file(params.modules_testdata_base_path + 'generic/config/agat_config.yaml', checkIfExists: true) + input[1] = file('https://raw.githubusercontent.com/NBISweden/AGAT/refs/tags/v1.4.2/share/agat_config.yaml', checkIfExists: true) """ } } @@ -113,7 +113,7 @@ nextflow_process { ] ] - input[1] = file(params.modules_testdata_base_path + 'generic/config/agat_config.yaml', checkIfExists: true) + input[1] = file('https://raw.githubusercontent.com/NBISweden/AGAT/refs/tags/v1.4.2/share/agat_config.yaml', checkIfExists: true) """ } } diff --git a/modules/nf-core/agat/spmergeannotations/tests/main.nf.test.snap b/modules/nf-core/agat/spmergeannotations/tests/main.nf.test.snap index 5b56cd9ae42..1a98aee6b65 100644 --- a/modules/nf-core/agat/spmergeannotations/tests/main.nf.test.snap +++ b/modules/nf-core/agat/spmergeannotations/tests/main.nf.test.snap @@ -11,7 +11,7 @@ ] ], "1": [ - "versions.yml:md5,bb159018d6a64ae51339f7c886ad28d7" + "versions.yml:md5,41c8654a8b48f0ce58a056ad3333ffeb" ], "gff": [ [ @@ -22,39 +22,39 @@ ] ], "versions": [ - "versions.yml:md5,bb159018d6a64ae51339f7c886ad28d7" + "versions.yml:md5,41c8654a8b48f0ce58a056ad3333ffeb" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.2" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-07-15T13:23:28.495387" + "timestamp": "2025-01-15T13:15:02.335761" }, "versions": { "content": [ [ - "versions.yml:md5,bb159018d6a64ae51339f7c886ad28d7" + "versions.yml:md5,41c8654a8b48f0ce58a056ad3333ffeb" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.2" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-07-15T13:23:23.220341" + "timestamp": "2025-01-15T13:14:54.668519" }, "versions_config": { "content": [ [ - "versions.yml:md5,bb159018d6a64ae51339f7c886ad28d7" + "versions.yml:md5,41c8654a8b48f0ce58a056ad3333ffeb" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.2" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-07-15T13:25:34.519378" + "timestamp": "2025-01-15T13:40:57.359656" }, "candidatus_portiera_aleyrodidarum - multi_gffs - stub - config": { "content": [ @@ -68,7 +68,7 @@ ] ], "1": [ - "versions.yml:md5,bb159018d6a64ae51339f7c886ad28d7" + "versions.yml:md5,41c8654a8b48f0ce58a056ad3333ffeb" ], "gff": [ [ @@ -79,14 +79,14 @@ ] ], "versions": [ - "versions.yml:md5,bb159018d6a64ae51339f7c886ad28d7" + "versions.yml:md5,41c8654a8b48f0ce58a056ad3333ffeb" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.2" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-07-15T13:23:43.811463" + "timestamp": "2025-01-15T13:15:18.81972" } } \ No newline at end of file diff --git a/modules/nf-core/agat/spstatistics/environment.yml b/modules/nf-core/agat/spstatistics/environment.yml index 0410ee765ea..d9cd916872b 100644 --- a/modules/nf-core/agat/spstatistics/environment.yml +++ b/modules/nf-core/agat/spstatistics/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::agat=1.4.0 + - bioconda::agat=1.4.2 diff --git a/modules/nf-core/agat/spstatistics/main.nf b/modules/nf-core/agat/spstatistics/main.nf index fd69d9c50ba..e09d80c7bda 100644 --- a/modules/nf-core/agat/spstatistics/main.nf +++ b/modules/nf-core/agat/spstatistics/main.nf @@ -4,8 +4,8 @@ process AGAT_SPSTATISTICS { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/agat:1.4.0--pl5321hdfd78af_0' : - 'biocontainers/agat:1.4.0--pl5321hdfd78af_0' }" + 'https://depot.galaxyproject.org/singularity/agat:1.4.2--pl5321hdfd78af_0' : + 'biocontainers/agat:1.4.2--pl5321hdfd78af_0' }" input: tuple val(meta), path(gff) @@ -33,7 +33,6 @@ process AGAT_SPSTATISTICS { """ stub: - def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" """ touch ${prefix}.stats.txt diff --git a/modules/nf-core/agat/spstatistics/tests/main.nf.test.snap b/modules/nf-core/agat/spstatistics/tests/main.nf.test.snap index 41f917406ad..94d2974bd8c 100644 --- a/modules/nf-core/agat/spstatistics/tests/main.nf.test.snap +++ b/modules/nf-core/agat/spstatistics/tests/main.nf.test.snap @@ -3,14 +3,14 @@ "content": [ [ "test.stats.txt", - "versions.yml:md5,33c0e3094afa9dabe8f773db494bceb9" + "versions.yml:md5,abfe6cf2fa946d8a58f103ab37f05ac3" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:14:09.802927" + "timestamp": "2025-01-15T13:15:32.560646" }, "sarscov2 genome [gff]": { "content": [ @@ -20,29 +20,29 @@ { "id": "test" }, - "test.stats.txt:md5,0a27bb5a911615023decd8223ba67812" + "test.stats.txt:md5,49b9c37029287f60be88a209abd2f58d" ] ], "1": [ - "versions.yml:md5,33c0e3094afa9dabe8f773db494bceb9" + "versions.yml:md5,abfe6cf2fa946d8a58f103ab37f05ac3" ], "stats_txt": [ [ { "id": "test" }, - "test.stats.txt:md5,0a27bb5a911615023decd8223ba67812" + "test.stats.txt:md5,49b9c37029287f60be88a209abd2f58d" ] ], "versions": [ - "versions.yml:md5,33c0e3094afa9dabe8f773db494bceb9" + "versions.yml:md5,abfe6cf2fa946d8a58f103ab37f05ac3" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:14:05.328436" + "timestamp": "2025-01-15T13:15:26.444277" } } \ No newline at end of file diff --git a/modules/nf-core/agat/sqstatbasic/environment.yml b/modules/nf-core/agat/sqstatbasic/environment.yml index 0410ee765ea..d9cd916872b 100644 --- a/modules/nf-core/agat/sqstatbasic/environment.yml +++ b/modules/nf-core/agat/sqstatbasic/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::agat=1.4.0 + - bioconda::agat=1.4.2 diff --git a/modules/nf-core/agat/sqstatbasic/main.nf b/modules/nf-core/agat/sqstatbasic/main.nf index d9b98c6b54a..493dd18e3f9 100644 --- a/modules/nf-core/agat/sqstatbasic/main.nf +++ b/modules/nf-core/agat/sqstatbasic/main.nf @@ -4,8 +4,8 @@ process AGAT_SQSTATBASIC { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/agat:1.4.0--pl5321hdfd78af_0' : - 'biocontainers/agat:1.4.0--pl5321hdfd78af_0' }" + 'https://depot.galaxyproject.org/singularity/agat:1.4.2--pl5321hdfd78af_0' : + 'biocontainers/agat:1.4.2--pl5321hdfd78af_0' }" input: tuple val(meta), path(gff) @@ -33,7 +33,6 @@ process AGAT_SQSTATBASIC { """ stub: - def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" """ touch ${prefix}.stats.txt diff --git a/modules/nf-core/agat/sqstatbasic/tests/main.nf.test.snap b/modules/nf-core/agat/sqstatbasic/tests/main.nf.test.snap index 10b75f48232..d8e08d3f093 100644 --- a/modules/nf-core/agat/sqstatbasic/tests/main.nf.test.snap +++ b/modules/nf-core/agat/sqstatbasic/tests/main.nf.test.snap @@ -3,14 +3,14 @@ "content": [ [ "test.stats.txt", - "versions.yml:md5,b5447c68fa61b8a04fdd7a95c4489775" + "versions.yml:md5,ef7436db11b81e3ed17e0bc7f6c0f621" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:16:10.187496" + "timestamp": "2025-01-15T13:15:44.883507" }, "sarscov2 - genome [gff3]": { "content": [ @@ -24,7 +24,7 @@ ] ], "1": [ - "versions.yml:md5,b5447c68fa61b8a04fdd7a95c4489775" + "versions.yml:md5,ef7436db11b81e3ed17e0bc7f6c0f621" ], "stats_txt": [ [ @@ -35,14 +35,14 @@ ] ], "versions": [ - "versions.yml:md5,b5447c68fa61b8a04fdd7a95c4489775" + "versions.yml:md5,ef7436db11b81e3ed17e0bc7f6c0f621" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.0", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:16:05.681598" + "timestamp": "2025-01-15T13:15:38.939816" } } \ No newline at end of file diff --git a/modules/nf-core/catpack/download/environment.yml b/modules/nf-core/catpack/download/environment.yml new file mode 100644 index 00000000000..20d286ab5b7 --- /dev/null +++ b/modules/nf-core/catpack/download/environment.yml @@ -0,0 +1,7 @@ +--- +# yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json +channels: + - conda-forge + - bioconda +dependencies: + - "bioconda::cat=6.0.1" diff --git a/modules/nf-core/catpack/download/main.nf b/modules/nf-core/catpack/download/main.nf new file mode 100644 index 00000000000..89bb97dee38 --- /dev/null +++ b/modules/nf-core/catpack/download/main.nf @@ -0,0 +1,47 @@ +process CATPACK_DOWNLOAD { + tag "${meta.id}" + label 'process_single' + + conda "${moduleDir}/environment.yml" + container "${workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container + ? 'https://depot.galaxyproject.org/singularity/cat:6.0.1--hdfd78af_0' + : 'biocontainers/cat:6.0.1--hdfd78af_0'}" + + input: + tuple val(meta), val(db) + + output: + tuple val(meta), path("${prefix}/"), emit: rawdb + path "versions.yml", emit: versions + + when: + task.ext.when == null || task.ext.when + + script: + def args = task.ext.args ?: '' + prefix = task.ext.prefix ?: "${meta.id}" + """ + CAT_pack \\ + download \\ + ${args} \\ + --db ${db} + -o ${prefix}/ + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + catpack: \$(CAT_pack --version | sed 's/CAT_pack pack v//g;s/ .*//g') + END_VERSIONS + """ + + stub: + def args = task.ext.args ?: '' + prefix = task.ext.prefix ?: "${meta.id}" + """ + mkdir ${prefix}/ + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + catpack: \$(CAT_pack --version | sed 's/CAT_pack pack v//g;s/ .*//g') + END_VERSIONS + """ +} diff --git a/modules/nf-core/catpack/download/meta.yml b/modules/nf-core/catpack/download/meta.yml new file mode 100644 index 00000000000..302461f6b70 --- /dev/null +++ b/modules/nf-core/catpack/download/meta.yml @@ -0,0 +1,51 @@ +--- +name: "catpack_download" +description: Downloads the required files for either Nr or GTDB for building into a CAT database +keywords: + - taxonomic classification + - classification + - database + - download +tools: + - "catpack": + description: "CAT/BAT: tool for taxonomic classification of contigs and metagenome-assembled genomes (MAGs)" + homepage: "https://github.com/MGXlab/CAT_pack" + documentation: "https://github.com/MGXlab/CAT_pack" + tool_dev_url: "https://github.com/MGXlab/CAT_pack" + doi: "10.1186/s13059-019-1817-x" + licence: ["MIT"] + +input: + - - meta: + type: map + description: | + Groovy Map containing sample information + e.g. `[ id:'sample1', single_end:false ]` + - db: + type: string + description: Which database to download + pattern: "nr|gtdb" + +output: + - rawdb: + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. `[ id:'sample1', single_end:false ]` + - "${prefix}/": + type: directory + description: Directory containing all the required NCBI Nr or GTDB database files required for building into a CAT database + pattern: "${db}/" + ontologies: + - edam: "http://edamontology.org/data_1049" + - versions: + - "versions.yml": + type: file + description: File containing software versions + pattern: "versions.yml" + +authors: + - "@jfy133" +maintainers: + - "@jfy133" diff --git a/modules/nf-core/catpack/download/tests/main.nf.test b/modules/nf-core/catpack/download/tests/main.nf.test new file mode 100644 index 00000000000..cc9aae700bf --- /dev/null +++ b/modules/nf-core/catpack/download/tests/main.nf.test @@ -0,0 +1,37 @@ +nextflow_process { + + name "Test Process CATPACK_DOWNLOAD" + script "../main.nf" + process "CATPACK_DOWNLOAD" + + tag "modules" + tag "modules_nfcore" + tag "catpack" + tag "catpack/download" + + // Only stub because module downloads extremely large + test("nr - stub") { + + options "-stub" + + when { + process { + """ + input[0] = [ + [ id:'nr', single_end:false ], // meta map + 'nr', + ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + +} diff --git a/modules/nf-core/catpack/download/tests/main.nf.test.snap b/modules/nf-core/catpack/download/tests/main.nf.test.snap new file mode 100644 index 00000000000..aa21368768b --- /dev/null +++ b/modules/nf-core/catpack/download/tests/main.nf.test.snap @@ -0,0 +1,41 @@ +{ + "nr - stub": { + "content": [ + { + "0": [ + [ + { + "id": "nr", + "single_end": false + }, + [ + + ] + ] + ], + "1": [ + "versions.yml:md5,e1493fe75b3b8cc2bc0cbd1d5ddfad44" + ], + "rawdb": [ + [ + { + "id": "nr", + "single_end": false + }, + [ + + ] + ] + ], + "versions": [ + "versions.yml:md5,e1493fe75b3b8cc2bc0cbd1d5ddfad44" + ] + } + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.10.2" + }, + "timestamp": "2024-12-19T16:19:22.533589236" + } +} \ No newline at end of file diff --git a/modules/nf-core/cellranger/multi/main.nf b/modules/nf-core/cellranger/multi/main.nf index 326962bb197..f3bde88a3f2 100644 --- a/modules/nf-core/cellranger/multi/main.nf +++ b/modules/nf-core/cellranger/multi/main.nf @@ -59,7 +59,7 @@ process CELLRANGER_MULTI { include_vdj = vdj_fastqs.first().getName() != 'fastqs' && vdj_reference ? '[vdj]' : '' include_beam = beam_fastqs.first().getName() != 'fastqs' && beam_control_panel ? '[antigen-specificity]' : '' include_cmo = cmo_fastqs.first().getName() != 'fastqs' && cmo_barcodes ? '[samples]' : '' - include_fb = ab_fastqs.first().getName() != 'fastqs' && fb_reference ? '[feature]' : '' + include_fb = (ab_fastqs.first().getName() != 'fastqs' || crispr_fastqs.first().getName() != 'fastqs') && fb_reference ? '[feature]' : '' include_frna = gex_frna_probeset_name && frna_sampleinfo ? '[samples]' : '' gex_reference_path = include_gex ? "reference,./${gex_reference_name}" : '' diff --git a/modules/nf-core/cellranger/multi/templates/cellranger_multi.py b/modules/nf-core/cellranger/multi/templates/cellranger_multi.py index 6f1bf85d6a4..9f00ec86a86 100644 --- a/modules/nf-core/cellranger/multi/templates/cellranger_multi.py +++ b/modules/nf-core/cellranger/multi/templates/cellranger_multi.py @@ -29,7 +29,7 @@ def chunk_iter(seq, size): # do not match "SRR12345", "file_INFIXR12", etc filename_pattern = r"([^a-zA-Z0-9])R1([^a-zA-Z0-9])" -for modality in ["gex", "vdj", "ab", "beam", "cmo", "cirspr"]: +for modality in ["gex", "vdj", "ab", "beam", "cmo", "crispr"]: # get fastqs, ordered by path. Files are staged into # - "fastq_001/{original_name.fastq.gz}" # - "fastq_002/{original_name.fastq.gz}" diff --git a/modules/nf-core/cellranger/multi/tests/main.nf.test b/modules/nf-core/cellranger/multi/tests/main.nf.test index 0259e1b3548..c5e762453e5 100644 --- a/modules/nf-core/cellranger/multi/tests/main.nf.test +++ b/modules/nf-core/cellranger/multi/tests/main.nf.test @@ -724,4 +724,150 @@ nextflow_process { } + test("cellranger - multi - 5k - a549 - sc3 v3 - gex + crispr") { + + setup { + + run("CELLRANGER_MKGTF", alias: "CELLRANGER_MKGTF_CRISPR") { + script "modules/nf-core/cellranger/mkgtf/main.nf" + process { + """ + input[0] = file(params.modules_testdata_base_path + 'genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/reference/genes_chr1_32292083_32686211.gtf', checkIfExists: true) + """ + } + } + + run("CELLRANGER_MKREF", alias: "CELLRANGER_MKREF_CRISPR") { + script "modules/nf-core/cellranger/mkref/main.nf" + process { + """ + input[0] = file(params.modules_testdata_base_path + 'genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/reference/genome_chr1_32292083_32686211.fa', checkIfExists: true) + input[1] = CELLRANGER_MKGTF_CRISPR.out.gtf + input[2] = 'homo_sapiens_chr1_32292083_32686211_reference' + """ + } + } + + } + + when { + process { + """ + // + // preparation + // + + /***************************/ + /*** stage 5k A549 data ***/ + /***************************/ + + // stage A549 cell FASTQ test data + + // stage gene expression FASTQ test data + test_10x_sc3_v3_5k_a549_gex = [ + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/gex/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_gex_S5_L001_R1_001.fastq.gz', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/gex/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_gex_S5_L001_R2_001.fastq.gz', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/gex/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_gex_S5_L002_R1_001.fastq.gz', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/gex/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_gex_S5_L002_R2_001.fastq.gz', checkIfExists: true) + ] + def test_10x_sc3_v3_5k_a549_gex_samplename = "subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K" + + // stage CRISPR FASTQ test data + test_10x_sc3_v3_5k_a549_crispr = [ + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/crispr/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_crispr_S4_L001_R1_001.fastq.gz', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/crispr/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_crispr_S4_L001_R2_001.fastq.gz', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/crispr/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_crispr_S4_L002_R1_001.fastq.gz', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/crispr/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_crispr_S4_L002_R2_001.fastq.gz', checkIfExists: true) + ] + def test_10x_sc3_v3_5k_a549_crispr_samplename = "subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K" + + // stage feature barcode reference for antibody capture + test_10x_sc3_v3_5k_a549_crispr_fb_reference = file(params.modules_testdata_base_path + 'genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/SC3_v3_NextGem_DI_CRISPR_A549_5K_Multiplex_count_feature_reference_chr1_32292083_32686211.csv', checkIfExists: true) + + /*******************************/ + /*** end stage 5k A549 data ***/ + /*******************************/ + + // make an empty dummy file, for FASTQs + empty_file = file("$workDir/EMPTY") + empty_file.append("") + + // create empty channels to fill unused cellranger multi arguments + // fastqs need a [ meta, ref ] structure + // references just need a path + ch_gex_fastqs = Channel.value( [ [ id:"EMPTY", options:[] ], empty_file ] ) + ch_vdj_fastqs = Channel.value( [ [ id:"EMPTY", options:[] ], empty_file ] ) + ch_ab_fastqs = Channel.value( [ [ id:"EMPTY", options:[] ], empty_file ] ) + ch_beam_fastqs = Channel.value( [ [ id:"EMPTY", options:[] ], empty_file ] ) + ch_cmo_fastqs = Channel.value( [ [ id:"EMPTY", options:[] ], empty_file ] ) + ch_crispr_fastqs = Channel.value( [ [ id:"EMPTY", options:[] ], empty_file ] ) + ch_gex_frna_probeset = [] + ch_gex_targetpanel = [] + ch_vdj_reference = [] + ch_vdj_primer_index = [] + ch_fb_reference = [] + ch_beam_antigen_panel = [] + ch_beam_control_panel = [] + ch_cmo_reference = [] + ch_cmo_barcodes = [] + ch_cmo_sample_assignment = [] + ch_frna_sampleinfo = [] + + // collect references and fastq files for staging + + ch_gex_fastqs_sc3_v3_5k_a549 = Channel.of( test_10x_sc3_v3_5k_a549_gex ) + .collect() + .map { reads -> [ [ id:test_10x_sc3_v3_5k_a549_gex_samplename , options:[ "expect-cells":"5000", chemistry:"SC3Pv3", "create-bam":false, "no-secondary":true ] ], reads ] } + + ch_crispr_fastqs_sc3_v3_5k_a549 = Channel.of( test_10x_sc3_v3_5k_a549_crispr ) + .collect() + .map { reads -> [ [ id:test_10x_sc3_v3_5k_a549_crispr_samplename , options:[ "expect-cells":"5000" ] ], reads ] } + + ch_crispr_reference_sc3_v3_5k_a549 = Channel.of( test_10x_sc3_v3_5k_a549_crispr_fb_reference ) + + // + // execution + // + input[0] = [ id:'subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K', single_end:false ] + input[1] = ch_gex_fastqs_sc3_v3_5k_a549 + input[2] = ch_vdj_fastqs + input[3] = ch_ab_fastqs + input[4] = ch_beam_fastqs + input[5] = ch_cmo_fastqs + input[6] = ch_crispr_fastqs_sc3_v3_5k_a549 + input[7] = CELLRANGER_MKREF_CRISPR.out.reference + input[8] = ch_gex_frna_probeset + input[9] = ch_gex_targetpanel + input[10] = ch_vdj_reference + input[11] = ch_vdj_primer_index + input[12] = ch_crispr_reference_sc3_v3_5k_a549 + input[13] = ch_beam_antigen_panel + input[14] = ch_beam_control_panel + input[15] = ch_cmo_reference + input[16] = ch_cmo_barcodes + input[17] = ch_cmo_sample_assignment + input[18] = ch_frna_sampleinfo + input[19] = false // default to false to guarantee renaming during test + """ + } + } + + then { + + assertAll( + { assert process.success }, + { assert snapshot( + process.out.outs[0][1].findAll { file(it).name == 'metrics_summary.csv' }, + process.out.outs[0][1].findAll { file(it).name == 'raw_feature_bc_matrix.h5' }, + process.out.outs[0][1].findAll { file(it).name == 'sample_filtered_feature_bc_matrix.h5' }, + process.out.outs[0][1].findAll { file(it).name == 'protospacer_calls_per_cell.csv' }, + process.out.outs[0][1].findAll { file(it).name == 'perturbation_efficiencies_by_feature.csv' } + ).match() }, + { assert snapshot(process.out.versions).match("versions-a549-crispr") } + ) + + } + + } + } diff --git a/modules/nf-core/cellranger/multi/tests/main.nf.test.snap b/modules/nf-core/cellranger/multi/tests/main.nf.test.snap index dc80d7948a0..31f83c72450 100644 --- a/modules/nf-core/cellranger/multi/tests/main.nf.test.snap +++ b/modules/nf-core/cellranger/multi/tests/main.nf.test.snap @@ -35,10 +35,10 @@ ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.2" }, - "timestamp": "2024-04-18T08:17:44.767319153" + "timestamp": "2025-01-13T20:43:16.019719647" }, "cellranger - multi - 10k - PBMC - with cmo": { "content": [ @@ -76,10 +76,46 @@ ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.2" }, - "timestamp": "2024-04-18T08:19:37.509459561" + "timestamp": "2025-01-13T20:45:08.327456478" + }, + "cellranger - multi - 5k - a549 - sc3 v3 - gex + crispr": { + "content": [ + [ + "metrics_summary.csv:md5,f11710688fdbe545aa111bb500ba1506" + ], + [ + "raw_feature_bc_matrix.h5:md5,d8f1e75c5ead2f501faf14a961a326ca" + ], + [ + "sample_filtered_feature_bc_matrix.h5:md5,c2e1958714cd710409f0627a96c7bd31" + ], + [ + "protospacer_calls_per_cell.csv:md5,a94184bddcd8107421f62986b9e0984a" + ], + [ + "perturbation_efficiencies_by_feature.csv:md5,bdf16f59c33b5f061e87b4f3ed74e809" + ] + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.2" + }, + "timestamp": "2024-12-19T00:53:44.55033207" + }, + "versions-a549-crispr": { + "content": [ + [ + "versions.yml:md5,c5714f73535a8ed4fad19e1198b6425a" + ] + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.2" + }, + "timestamp": "2025-01-13T20:49:31.807285657" }, "versions-with-vdj": { "content": [ @@ -88,10 +124,10 @@ ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.2" }, - "timestamp": "2024-04-18T08:21:38.624731758" + "timestamp": "2025-01-13T20:46:58.001307633" }, "cellranger - multi - 10k - PBMC - with vdj": { "content": [ @@ -117,9 +153,9 @@ ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.2" }, - "timestamp": "2024-04-18T08:21:38.551047173" + "timestamp": "2024-12-18T23:48:45.579759284" } } \ No newline at end of file diff --git a/modules/nf-core/coptr/estimate/meta.yml b/modules/nf-core/coptr/estimate/meta.yml index 2afb599563a..531f95d4817 100644 --- a/modules/nf-core/coptr/estimate/meta.yml +++ b/modules/nf-core/coptr/estimate/meta.yml @@ -28,7 +28,7 @@ input: description: Python pickle file containing coverage maps pattern: "*.pkl" ontologies: - - edam: "http://edamontology.org/format_4002" + - edam: "http://edamontology.org/format_4002" output: - ptr: @@ -42,7 +42,7 @@ output: description: CSV table with rows as reference genomes, columns samples and entries as log2 PTR pattern: "*.csv" ontologies: - - edam: "http://edamontology.org/format_3752" + - edam: "http://edamontology.org/format_3752" - versions: - "versions.yml": diff --git a/modules/nf-core/custom/matrixfilter/main.nf b/modules/nf-core/custom/matrixfilter/main.nf index c31a45be97f..47a99fad3f2 100644 --- a/modules/nf-core/custom/matrixfilter/main.nf +++ b/modules/nf-core/custom/matrixfilter/main.nf @@ -2,9 +2,9 @@ process CUSTOM_MATRIXFILTER { tag "$meta" label 'process_single' conda "${moduleDir}/environment.yml" - container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/r-base:4.2.1' : - 'biocontainers/r-base:4.2.1' }" + container "${workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container + ? 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/48/483e9d9b3b07e5658792d579e230ad40ed18daf7b9ebfb4323c08570f92fd1d5/data' + : 'community.wave.seqera.io/library/r-base:4.2.1--b0b5476e2e7a0872'}" input: tuple val(meta), path(abundance) @@ -13,7 +13,7 @@ process CUSTOM_MATRIXFILTER { output: tuple val(meta), path("*.filtered.tsv") , emit: filtered tuple val(meta), path("*.tests.tsv") , emit: tests - tuple val(meta), path("R_sessionInfo.log") , emit: session_info + tuple val(meta), path("*R_sessionInfo.log") , emit: session_info path "versions.yml" , emit: versions when: @@ -27,4 +27,17 @@ process CUSTOM_MATRIXFILTER { // (new variables defined here don't seem to be available in templates, so // we have to access $task directly) template 'matrixfilter.R' + + stub: + def prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.filtered.tsv + touch ${prefix}.tests.tsv + touch ${prefix}.R_sessionInfo.log + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + r-base: \$(echo \$(R --version 2>&1) | sed 's/^.*R version //; s/ .*\$//') + END_VERSIONS + """ } diff --git a/modules/nf-core/custom/matrixfilter/meta.yml b/modules/nf-core/custom/matrixfilter/meta.yml index ce9601b580f..04d41042c28 100644 --- a/modules/nf-core/custom/matrixfilter/meta.yml +++ b/modules/nf-core/custom/matrixfilter/meta.yml @@ -62,7 +62,7 @@ output: description: | Groovy Map containing information on experiment. e.g. [ id:'test' ] - - R_sessionInfo.log: + - "*R_sessionInfo.log": type: file description: Log file containing R session information pattern: "*.log" diff --git a/modules/nf-core/custom/matrixfilter/templates/matrixfilter.R b/modules/nf-core/custom/matrixfilter/templates/matrixfilter.R index a6f734eb911..9064fc2efd2 100755 --- a/modules/nf-core/custom/matrixfilter/templates/matrixfilter.R +++ b/modules/nf-core/custom/matrixfilter/templates/matrixfilter.R @@ -207,7 +207,7 @@ keep <- apply(boolean_matrix, 1, all) # Write out the matrix retaining the specified rows and re-prepending the # column with the feature identifiers -prefix = ifelse('$task.ext.prefix' == 'null', '', '$task.ext.prefix') +prefix = ifelse('$task.ext.prefix' == 'null', '$meta.id', '$task.ext.prefix') write.table( data.frame(rownames(abundance_matrix)[keep], abundance_matrix[keep,,drop = FALSE]), diff --git a/modules/nf-core/custom/matrixfilter/tests/main.nf.test b/modules/nf-core/custom/matrixfilter/tests/main.nf.test new file mode 100644 index 00000000000..07a5b1b1c28 --- /dev/null +++ b/modules/nf-core/custom/matrixfilter/tests/main.nf.test @@ -0,0 +1,100 @@ +nextflow_process { + + name "Test Process CUSTOM_MATRIXFILTER" + script "../main.nf" + process "CUSTOM_MATRIXFILTER" + config "./nextflow.config" + tag "modules" + tag "modules_nfcore" + tag "custom_matrixfilter" + tag "custom" + tag "custom/matrixfilter" + + test("test_custom_matrixfilter") { + + when { + params { + observations_id_col = 'sample' + filtering_min_samples = 1.0 + filtering_min_abundance = 10 + filtering_min_proportion = null + filtering_grouping_var = null + filtering_min_proportion_not_na = 0.5 + filtering_min_samples_not_na = null + + module_args = [ + "--sample_id_col \"${params.observations_id_col}\"", + "--minimum_samples ${params.filtering_min_samples}", + "--minimum_abundance ${params.filtering_min_abundance}", + (params.filtering_min_proportion ? "--minimum_proportion ${params.filtering_min_proportion}" : ''), + (params.filtering_grouping_var ? "--grouping_variable \"${params.filtering_grouping_var}\"" : ''), + (params.filtering_min_proportion_not_na ? "--minimum_proportion_not_na \"${params.filtering_min_proportion_not_na}\"" : ''), + (params.filtering_min_samples_not_na ? "--minimum_samples_not_na \"${params.filtering_min_samples_not_na}\"" : '') + ].join(' ').trim() + } + process { + """ + input[0] = [ [id:"test"], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.salmon.merged.gene_counts.top1000cov.assay.tsv",checkIfExists: true) + ] + input[1] = [ [id:"test"], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.samplesheet.sample_metadata.tsv",checkIfExists: true) + ] + """ + + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot(process.out.filtered, + process.out.tests, + process.out.versions).match() } + ) + } + } + + test("test_custom_matrixfilter - stub") { + + options "-stub" + + when { + params { + observations_id_col = 'sample' + filtering_min_samples = 1.0 + filtering_min_abundance = 10 + filtering_min_proportion = null + filtering_grouping_var = null + filtering_min_proportion_not_na = 0.5 + filtering_min_samples_not_na = null + module_args = [ + "--sample_id_col \"${params.observations_id_col}\"", + "--minimum_samples ${params.filtering_min_samples}", + "--minimum_abundance ${params.filtering_min_abundance}", + (params.filtering_min_proportion ? "--minimum_proportion ${params.filtering_min_proportion}" : ''), + (params.filtering_grouping_var ? "--grouping_variable \"${params.filtering_grouping_var}\"" : ''), + (params.filtering_min_proportion_not_na ? "--minimum_proportion_not_na \"${params.filtering_min_proportion_not_na}\"" : ''), + (params.filtering_min_samples_not_na ? "--minimum_samples_not_na \"${params.filtering_min_samples_not_na}\"" : '') + ].join(' ').trim() + } + process { + """ + input[0] = [ [id:"test"], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.salmon.merged.gene_counts.top1000cov.assay.tsv",checkIfExists: true) + ] + input[1] = [ [id:"test"], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.samplesheet.sample_metadata.tsv",checkIfExists: true) + ] + """ + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/nf-core/custom/matrixfilter/tests/main.nf.test.snap b/modules/nf-core/custom/matrixfilter/tests/main.nf.test.snap new file mode 100644 index 00000000000..1d879d8cfb3 --- /dev/null +++ b/modules/nf-core/custom/matrixfilter/tests/main.nf.test.snap @@ -0,0 +1,95 @@ +{ + "test_custom_matrixfilter": { + "content": [ + [ + [ + { + "id": "test" + }, + "test.filtered.tsv:md5,ecc3ca4c6538f9248dce844108474a66" + ] + ], + [ + [ + { + "id": "test" + }, + "test.tests.tsv:md5,9a0f14988df8c1b8975039eed91b85e2" + ] + ], + [ + "versions.yml:md5,275e382be9ca5bdd30ff5d6fc4340616" + ] + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.2" + }, + "timestamp": "2024-12-13T21:21:11.862199262" + }, + "test_custom_matrixfilter - stub": { + "content": [ + { + "0": [ + [ + { + "id": "test" + }, + "test.filtered.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + [ + { + "id": "test" + }, + "test.tests.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "2": [ + [ + { + "id": "test" + }, + "test.R_sessionInfo.log:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "3": [ + "versions.yml:md5,275e382be9ca5bdd30ff5d6fc4340616" + ], + "filtered": [ + [ + { + "id": "test" + }, + "test.filtered.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "session_info": [ + [ + { + "id": "test" + }, + "test.R_sessionInfo.log:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "tests": [ + [ + { + "id": "test" + }, + "test.tests.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,275e382be9ca5bdd30ff5d6fc4340616" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.2" + }, + "timestamp": "2024-12-13T21:22:31.144793503" + } +} \ No newline at end of file diff --git a/modules/nf-core/custom/matrixfilter/tests/nextflow.config b/modules/nf-core/custom/matrixfilter/tests/nextflow.config new file mode 100644 index 00000000000..ad3d36ef5c9 --- /dev/null +++ b/modules/nf-core/custom/matrixfilter/tests/nextflow.config @@ -0,0 +1,3 @@ +process { + ext.args = params.module_args +} diff --git a/modules/nf-core/custom/tabulartogseacls/main.nf b/modules/nf-core/custom/tabulartogseacls/main.nf index afa0c41e60b..dea4c3e6a2f 100644 --- a/modules/nf-core/custom/tabulartogseacls/main.nf +++ b/modules/nf-core/custom/tabulartogseacls/main.nf @@ -40,7 +40,18 @@ process CUSTOM_TABULARTOGSEACLS { cat <<-END_VERSIONS > versions.yml "${task.process}": - bash: \$(echo \$(bash --version | grep -Eo 'version [[:alnum:].]+' | sed 's/version //')) + awk: \$(mawk -W version | head -n 1 | awk '{print \$2}') END_VERSIONS """ + + stub: + def prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.cls + cat <<-END_VERSIONS > versions.yml + "${task.process}": + awk: \$(mawk -W version | head -n 1 | awk '{print \$2}') + END_VERSIONS + """ + } diff --git a/modules/nf-core/custom/tabulartogseacls/tests/main.nf.test b/modules/nf-core/custom/tabulartogseacls/tests/main.nf.test new file mode 100644 index 00000000000..652aee9dd34 --- /dev/null +++ b/modules/nf-core/custom/tabulartogseacls/tests/main.nf.test @@ -0,0 +1,63 @@ +nextflow_process { + + name "Test Process CUSTOM_TABULARTOGSEACLS" + script "../main.nf" + process "CUSTOM_TABULARTOGSEACLS" + config "./nextflow.config" + tag "modules" + tag "modules_nfcore" + tag "custom_tabulartogseacls" + tag "custom" + tag "custom/tabulartogseacls" + + test("test_custom_tabulartogseacls") { + + when { + params { + module_args = [ "separator": "\t", "variable": "treatment" ] + } + process { + """ + input[0] = [ + [id:'treatment_mCherry_hND6_sample_number', variable:'treatment', reference:'mCherry', target:'hND6', blocking:'sample_number'], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.samplesheet.sample_metadata.tsv", checkIfExists: true) + ] + """ + + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } + + test("test_custom_tabulartogseacls - stub") { + + options "-stub" + + when { + params { + module_args = { [ "separator": "\t", "variable": "treatment" ] } + } + process { + """ + input[0] = [ + [id:'treatment_mCherry_hND6_sample_number', variable:'treatment', reference:'mCherry', target:'hND6', blocking:'sample_number'], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.samplesheet.sample_metadata.tsv", checkIfExists: true) + ] + """ + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/nf-core/custom/tabulartogseacls/tests/main.nf.test.snap b/modules/nf-core/custom/tabulartogseacls/tests/main.nf.test.snap new file mode 100644 index 00000000000..3c808a4a0cf --- /dev/null +++ b/modules/nf-core/custom/tabulartogseacls/tests/main.nf.test.snap @@ -0,0 +1,84 @@ +{ + "test_custom_tabulartogseacls - stub": { + "content": [ + { + "0": [ + [ + { + "id": "treatment_mCherry_hND6_sample_number", + "variable": "treatment", + "reference": "mCherry", + "target": "hND6", + "blocking": "sample_number" + }, + "treatment_mCherry_hND6_sample_number.cls:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,bdeacaf3413865c27625dce2b7adcd9e" + ], + "cls": [ + [ + { + "id": "treatment_mCherry_hND6_sample_number", + "variable": "treatment", + "reference": "mCherry", + "target": "hND6", + "blocking": "sample_number" + }, + "treatment_mCherry_hND6_sample_number.cls:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,bdeacaf3413865c27625dce2b7adcd9e" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.2" + }, + "timestamp": "2024-12-13T21:25:30.548463583" + }, + "test_custom_tabulartogseacls": { + "content": [ + { + "0": [ + [ + { + "id": "treatment_mCherry_hND6_sample_number", + "variable": "treatment", + "reference": "mCherry", + "target": "hND6", + "blocking": "sample_number" + }, + "treatment_mCherry_hND6_sample_number.cls:md5,7b887159417842b1fe87afebe4f8c2b7" + ] + ], + "1": [ + "versions.yml:md5,bdeacaf3413865c27625dce2b7adcd9e" + ], + "cls": [ + [ + { + "id": "treatment_mCherry_hND6_sample_number", + "variable": "treatment", + "reference": "mCherry", + "target": "hND6", + "blocking": "sample_number" + }, + "treatment_mCherry_hND6_sample_number.cls:md5,7b887159417842b1fe87afebe4f8c2b7" + ] + ], + "versions": [ + "versions.yml:md5,bdeacaf3413865c27625dce2b7adcd9e" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.2" + }, + "timestamp": "2024-12-13T21:25:22.003232009" + } +} \ No newline at end of file diff --git a/modules/nf-core/custom/tabulartogseacls/tests/nextflow.config b/modules/nf-core/custom/tabulartogseacls/tests/nextflow.config new file mode 100644 index 00000000000..ad3d36ef5c9 --- /dev/null +++ b/modules/nf-core/custom/tabulartogseacls/tests/nextflow.config @@ -0,0 +1,3 @@ +process { + ext.args = params.module_args +} diff --git a/modules/nf-core/custom/tabulartogseagct/main.nf b/modules/nf-core/custom/tabulartogseagct/main.nf index 736607a57db..6ac17922e14 100644 --- a/modules/nf-core/custom/tabulartogseagct/main.nf +++ b/modules/nf-core/custom/tabulartogseagct/main.nf @@ -34,7 +34,17 @@ process CUSTOM_TABULARTOGSEAGCT { cat <<-END_VERSIONS > versions.yml "${task.process}": - bash: \$(echo \$(bash --version | grep -Eo 'version [[:alnum:].]+' | sed 's/version //')) + awk: \$(mawk -W version | head -n 1 | awk '{print \$2}') + END_VERSIONS + """ + + stub: + def prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.gct + cat <<-END_VERSIONS > versions.yml + "${task.process}": + awk: \$(mawk -W version | head -n 1 | awk '{print \$2}') END_VERSIONS """ } diff --git a/modules/nf-core/custom/tabulartogseagct/tests/main.nf.test b/modules/nf-core/custom/tabulartogseagct/tests/main.nf.test new file mode 100644 index 00000000000..dc51b363d27 --- /dev/null +++ b/modules/nf-core/custom/tabulartogseagct/tests/main.nf.test @@ -0,0 +1,56 @@ +nextflow_process { + + name "Test Process CUSTOM_TABULARTOGSEAGCT" + script "../main.nf" + process "CUSTOM_TABULARTOGSEAGCT" + tag "modules" + tag "modules_nfcore" + tag "custom_tabulartogseagct" + tag "custom" + tag "custom/tabulartogseagct" + + test("test_custom_tabulartogseagct") { + + when { + process { + """ + input[0] = [ + [id:'treatment_mCherry_hND6_', variable:'treatment', reference:'mCherry', target:'hND6', blocking:''], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/all.normalised_counts.tsv",checkIfExists: true) + ] + """ + + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } + + test("test_custom_tabulartogseagct - stub") { + + options "-stub" + + when { + process { + """ + input[0] = [ + [id:'treatment_mCherry_hND6_', variable:'treatment', reference:'mCherry', target:'hND6', blocking:''], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/all.normalised_counts.tsv",checkIfExists: true) + ] + """ + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/nf-core/custom/tabulartogseagct/tests/main.nf.test.snap b/modules/nf-core/custom/tabulartogseagct/tests/main.nf.test.snap new file mode 100644 index 00000000000..612b8b14405 --- /dev/null +++ b/modules/nf-core/custom/tabulartogseagct/tests/main.nf.test.snap @@ -0,0 +1,84 @@ +{ + "test_custom_tabulartogseagct": { + "content": [ + { + "0": [ + [ + { + "id": "treatment_mCherry_hND6_", + "variable": "treatment", + "reference": "mCherry", + "target": "hND6", + "blocking": "" + }, + "treatment_mCherry_hND6_.gct:md5,9727aca45da7ebe619a1f964c9813eee" + ] + ], + "1": [ + "versions.yml:md5,2cafb8acd2b6a49ec44971051349eb17" + ], + "gct": [ + [ + { + "id": "treatment_mCherry_hND6_", + "variable": "treatment", + "reference": "mCherry", + "target": "hND6", + "blocking": "" + }, + "treatment_mCherry_hND6_.gct:md5,9727aca45da7ebe619a1f964c9813eee" + ] + ], + "versions": [ + "versions.yml:md5,2cafb8acd2b6a49ec44971051349eb17" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.2" + }, + "timestamp": "2024-12-13T21:25:51.307267504" + }, + "test_custom_tabulartogseagct - stub": { + "content": [ + { + "0": [ + [ + { + "id": "treatment_mCherry_hND6_", + "variable": "treatment", + "reference": "mCherry", + "target": "hND6", + "blocking": "" + }, + "treatment_mCherry_hND6_.gct:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,2cafb8acd2b6a49ec44971051349eb17" + ], + "gct": [ + [ + { + "id": "treatment_mCherry_hND6_", + "variable": "treatment", + "reference": "mCherry", + "target": "hND6", + "blocking": "" + }, + "treatment_mCherry_hND6_.gct:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,2cafb8acd2b6a49ec44971051349eb17" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.2" + }, + "timestamp": "2024-12-13T21:25:59.490069672" + } +} \ No newline at end of file diff --git a/modules/nf-core/deepvariant/rundeepvariant/main.nf b/modules/nf-core/deepvariant/rundeepvariant/main.nf index 7f99c53f6d2..aec18907646 100644 --- a/modules/nf-core/deepvariant/rundeepvariant/main.nf +++ b/modules/nf-core/deepvariant/rundeepvariant/main.nf @@ -5,7 +5,7 @@ process DEEPVARIANT_RUNDEEPVARIANT { // FIXME Conda is not supported at the moment // BUG https://github.com/nf-core/modules/issues/1754 // BUG https://github.com/bioconda/bioconda-recipes/issues/30310 - 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,11 +15,11 @@ process DEEPVARIANT_RUNDEEPVARIANT { tuple val(meta5), path(par_bed) output: - tuple val(meta), path("${prefix}.vcf.gz") , emit: vcf - tuple val(meta), path("${prefix}.vcf.gz.tbi") , emit: vcf_tbi - tuple val(meta), path("${prefix}.g.vcf.gz") , emit: gvcf - tuple val(meta), path("${prefix}.g.vcf.gz.tbi"), emit: gvcf_tbi - path "versions.yml" , emit: versions + tuple val(meta), path("${prefix}.vcf.gz") , emit: vcf + tuple val(meta), path("${prefix}.vcf.gz.tbi") , emit: vcf_tbi + tuple val(meta), path("${prefix}.g.vcf.gz") , emit: gvcf + tuple val(meta), path("${prefix}.g.vcf.gz.tbi"), emit: gvcf_tbi + path "versions.yml" , emit: versions when: task.ext.when == null || task.ext.when @@ -33,9 +33,6 @@ process DEEPVARIANT_RUNDEEPVARIANT { prefix = task.ext.prefix ?: "${meta.id}" def regions = intervals ? "--regions=${intervals}" : "" def par_regions = par_bed ? "--par_regions_bed=${par_bed}" : "" - // WARN https://github.com/nf-core/modules/pull/5801#issuecomment-2194293755 - // FIXME Revert this on next version bump - def VERSION = '1.6.1' """ /opt/deepvariant/bin/run_deepvariant \\ @@ -51,7 +48,7 @@ process DEEPVARIANT_RUNDEEPVARIANT { cat <<-END_VERSIONS > versions.yml "${task.process}": - deepvariant: $VERSION + deepvariant: \$(echo \$(/opt/deepvariant/bin/run_deepvariant --version) | sed 's/^.*version //; s/ .*\$//' ) END_VERSIONS """ @@ -61,9 +58,6 @@ process DEEPVARIANT_RUNDEEPVARIANT { error "DEEPVARIANT module does not support Conda. Please use Docker / Singularity / Podman instead." } prefix = task.ext.prefix ?: "${meta.id}" - // WARN https://github.com/nf-core/modules/pull/5801#issuecomment-2194293755 - // FIXME Revert this on next version bump - def VERSION = '1.6.1' """ touch ${prefix}.vcf.gz touch ${prefix}.vcf.gz.tbi @@ -72,7 +66,7 @@ process DEEPVARIANT_RUNDEEPVARIANT { cat <<-END_VERSIONS > versions.yml "${task.process}": - deepvariant: $VERSION + deepvariant: \$(echo \$(/opt/deepvariant/bin/run_deepvariant --version) | sed 's/^.*version //; s/ .*\$//' ) END_VERSIONS """ } diff --git a/modules/nf-core/deepvariant/rundeepvariant/tests/main.nf.test.snap b/modules/nf-core/deepvariant/rundeepvariant/tests/main.nf.test.snap index 1ec351eecc9..8e836336da6 100644 --- a/modules/nf-core/deepvariant/rundeepvariant/tests/main.nf.test.snap +++ b/modules/nf-core/deepvariant/rundeepvariant/tests/main.nf.test.snap @@ -8,7 +8,7 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz:md5,8b8ab4a675f01e437aa72e1438a717d0" + "test_out.vcf.gz:md5,cf14200d683c17a6e433bb076d487fee" ] ], "1": [ @@ -17,7 +17,7 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz.tbi:md5,0000833138104e87b05eaa906821eb21" + "test_out.vcf.gz.tbi:md5,e9bcd1d1f5280e0d76ed8fd31f27bd59" ] ], "2": [ @@ -26,7 +26,7 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz:md5,0a629e1745926cfcedf4b169046a921a" + "test_out.g.vcf.gz:md5,6251a87945e530ca61a989d7187d89dc" ] ], "3": [ @@ -35,11 +35,11 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz.tbi:md5,49503913c28ec70a6f4aa52f6b357b4d" + "test_out.g.vcf.gz.tbi:md5,32ca0d6713b96ed4ce07c79421bb04a9" ] ], "4": [ - "versions.yml:md5,a251d8d9f5e8b737d8298eead96c0890" + "versions.yml:md5,cd692ea876a00da762fd4608c9f40f01" ], "gvcf": [ [ @@ -47,7 +47,7 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz:md5,0a629e1745926cfcedf4b169046a921a" + "test_out.g.vcf.gz:md5,6251a87945e530ca61a989d7187d89dc" ] ], "gvcf_tbi": [ @@ -56,7 +56,7 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz.tbi:md5,49503913c28ec70a6f4aa52f6b357b4d" + "test_out.g.vcf.gz.tbi:md5,32ca0d6713b96ed4ce07c79421bb04a9" ] ], "vcf": [ @@ -65,7 +65,7 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz:md5,8b8ab4a675f01e437aa72e1438a717d0" + "test_out.vcf.gz:md5,cf14200d683c17a6e433bb076d487fee" ] ], "vcf_tbi": [ @@ -74,19 +74,19 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz.tbi:md5,0000833138104e87b05eaa906821eb21" + "test_out.vcf.gz.tbi:md5,e9bcd1d1f5280e0d76ed8fd31f27bd59" ] ], "versions": [ - "versions.yml:md5,a251d8d9f5e8b737d8298eead96c0890" + "versions.yml:md5,cd692ea876a00da762fd4608c9f40f01" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-08-29T11:36:27.325363" + "timestamp": "2025-01-14T08:16:22.036932742" }, "homo_sapiens - [bam, bai] - fasta - fai": { "content": [ @@ -97,7 +97,7 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz:md5,8b8ab4a675f01e437aa72e1438a717d0" + "test_out.vcf.gz:md5,cf14200d683c17a6e433bb076d487fee" ] ], "1": [ @@ -106,7 +106,7 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz.tbi:md5,0000833138104e87b05eaa906821eb21" + "test_out.vcf.gz.tbi:md5,e9bcd1d1f5280e0d76ed8fd31f27bd59" ] ], "2": [ @@ -115,7 +115,7 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz:md5,0a629e1745926cfcedf4b169046a921a" + "test_out.g.vcf.gz:md5,6251a87945e530ca61a989d7187d89dc" ] ], "3": [ @@ -124,11 +124,11 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz.tbi:md5,49503913c28ec70a6f4aa52f6b357b4d" + "test_out.g.vcf.gz.tbi:md5,32ca0d6713b96ed4ce07c79421bb04a9" ] ], "4": [ - "versions.yml:md5,a251d8d9f5e8b737d8298eead96c0890" + "versions.yml:md5,cd692ea876a00da762fd4608c9f40f01" ], "gvcf": [ [ @@ -136,7 +136,7 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz:md5,0a629e1745926cfcedf4b169046a921a" + "test_out.g.vcf.gz:md5,6251a87945e530ca61a989d7187d89dc" ] ], "gvcf_tbi": [ @@ -145,7 +145,7 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz.tbi:md5,49503913c28ec70a6f4aa52f6b357b4d" + "test_out.g.vcf.gz.tbi:md5,32ca0d6713b96ed4ce07c79421bb04a9" ] ], "vcf": [ @@ -154,7 +154,7 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz:md5,8b8ab4a675f01e437aa72e1438a717d0" + "test_out.vcf.gz:md5,cf14200d683c17a6e433bb076d487fee" ] ], "vcf_tbi": [ @@ -163,19 +163,19 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz.tbi:md5,0000833138104e87b05eaa906821eb21" + "test_out.vcf.gz.tbi:md5,e9bcd1d1f5280e0d76ed8fd31f27bd59" ] ], "versions": [ - "versions.yml:md5,a251d8d9f5e8b737d8298eead96c0890" + "versions.yml:md5,cd692ea876a00da762fd4608c9f40f01" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-08-29T11:34:41.779153" + "timestamp": "2025-01-14T08:13:35.621497498" }, "homo_sapiens - [cram, crai, genome_bed] - fasta - fai": { "content": [ @@ -186,7 +186,7 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz:md5,8b8ab4a675f01e437aa72e1438a717d0" + "test_out.vcf.gz:md5,cf14200d683c17a6e433bb076d487fee" ] ], "1": [ @@ -195,7 +195,7 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz.tbi:md5,0000833138104e87b05eaa906821eb21" + "test_out.vcf.gz.tbi:md5,e9bcd1d1f5280e0d76ed8fd31f27bd59" ] ], "2": [ @@ -204,7 +204,7 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz:md5,0a629e1745926cfcedf4b169046a921a" + "test_out.g.vcf.gz:md5,6251a87945e530ca61a989d7187d89dc" ] ], "3": [ @@ -213,11 +213,11 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz.tbi:md5,49503913c28ec70a6f4aa52f6b357b4d" + "test_out.g.vcf.gz.tbi:md5,32ca0d6713b96ed4ce07c79421bb04a9" ] ], "4": [ - "versions.yml:md5,a251d8d9f5e8b737d8298eead96c0890" + "versions.yml:md5,cd692ea876a00da762fd4608c9f40f01" ], "gvcf": [ [ @@ -225,7 +225,7 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz:md5,0a629e1745926cfcedf4b169046a921a" + "test_out.g.vcf.gz:md5,6251a87945e530ca61a989d7187d89dc" ] ], "gvcf_tbi": [ @@ -234,7 +234,7 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz.tbi:md5,49503913c28ec70a6f4aa52f6b357b4d" + "test_out.g.vcf.gz.tbi:md5,32ca0d6713b96ed4ce07c79421bb04a9" ] ], "vcf": [ @@ -243,7 +243,7 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz:md5,8b8ab4a675f01e437aa72e1438a717d0" + "test_out.vcf.gz:md5,cf14200d683c17a6e433bb076d487fee" ] ], "vcf_tbi": [ @@ -252,19 +252,19 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz.tbi:md5,0000833138104e87b05eaa906821eb21" + "test_out.vcf.gz.tbi:md5,e9bcd1d1f5280e0d76ed8fd31f27bd59" ] ], "versions": [ - "versions.yml:md5,a251d8d9f5e8b737d8298eead96c0890" + "versions.yml:md5,cd692ea876a00da762fd4608c9f40f01" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-08-29T11:35:16.993129" + "timestamp": "2025-01-14T08:14:32.23781232" }, "homo_sapiens - [cram, crai, genome_bed] - fasta - fai - par_bed": { "content": [ @@ -275,7 +275,7 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz:md5,d2e26d65dbbcea9b087ed191b5c9841c" + "test_out.vcf.gz:md5,b79936a7bf53fa4ee7e5866664e37d56" ] ], "1": [ @@ -284,7 +284,7 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz.tbi:md5,0801296d0356415bbf1ef8deb4ec84c3" + "test_out.vcf.gz.tbi:md5,22f9f4c6c8c1faa8b129eddf32b445b8" ] ], "2": [ @@ -293,7 +293,7 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz:md5,4fcaa9a8b55730d191382160c2b5bb0a" + "test_out.g.vcf.gz:md5,c82ce85ed16dcabe411995c52aaffd85" ] ], "3": [ @@ -302,11 +302,11 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz.tbi:md5,f468e846904733b3231ecf00ef7cd4a2" + "test_out.g.vcf.gz.tbi:md5,6420a456b0507c70c8423293395c29bc" ] ], "4": [ - "versions.yml:md5,a251d8d9f5e8b737d8298eead96c0890" + "versions.yml:md5,cd692ea876a00da762fd4608c9f40f01" ], "gvcf": [ [ @@ -314,7 +314,7 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz:md5,4fcaa9a8b55730d191382160c2b5bb0a" + "test_out.g.vcf.gz:md5,c82ce85ed16dcabe411995c52aaffd85" ] ], "gvcf_tbi": [ @@ -323,7 +323,7 @@ "id": "test", "single_end": false }, - "test_out.g.vcf.gz.tbi:md5,f468e846904733b3231ecf00ef7cd4a2" + "test_out.g.vcf.gz.tbi:md5,6420a456b0507c70c8423293395c29bc" ] ], "vcf": [ @@ -332,7 +332,7 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz:md5,d2e26d65dbbcea9b087ed191b5c9841c" + "test_out.vcf.gz:md5,b79936a7bf53fa4ee7e5866664e37d56" ] ], "vcf_tbi": [ @@ -341,18 +341,18 @@ "id": "test", "single_end": false }, - "test_out.vcf.gz.tbi:md5,0801296d0356415bbf1ef8deb4ec84c3" + "test_out.vcf.gz.tbi:md5,22f9f4c6c8c1faa8b129eddf32b445b8" ] ], "versions": [ - "versions.yml:md5,a251d8d9f5e8b737d8298eead96c0890" + "versions.yml:md5,cd692ea876a00da762fd4608c9f40f01" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-08-29T11:35:52.23093" + "timestamp": "2025-01-14T08:15:29.680851997" } } \ No newline at end of file diff --git a/modules/nf-core/deepvariant/vcfstatsreport/main.nf b/modules/nf-core/deepvariant/vcfstatsreport/main.nf index 5bbf06b633f..314c3d2aec1 100644 --- a/modules/nf-core/deepvariant/vcfstatsreport/main.nf +++ b/modules/nf-core/deepvariant/vcfstatsreport/main.nf @@ -5,7 +5,7 @@ process DEEPVARIANT_VCFSTATSREPORT { // FIXME Conda is not supported at the moment // BUG https://github.com/nf-core/modules/issues/1754 // BUG https://github.com/bioconda/bioconda-recipes/issues/30310 - container "nf-core/deepvariant:1.6.1" + container "docker.io/google/deepvariant:1.8.0" input: tuple val(meta), path(vcf) @@ -24,10 +24,6 @@ process DEEPVARIANT_VCFSTATSREPORT { } def args = task.ext.args ?: '' prefix = task.ext.prefix ?: "${meta.id}" - // WARN https://github.com/nf-core/modules/pull/5801#issuecomment-2194293755 - // FIXME Revert this on next version bump - def VERSION = '1.6.1' - """ /opt/deepvariant/bin/vcf_stats_report \\ --input_vcf=${vcf} \\ @@ -35,7 +31,7 @@ process DEEPVARIANT_VCFSTATSREPORT { cat <<-END_VERSIONS > versions.yml "${task.process}": - deepvariant: $VERSION + deepvariant: \$(echo \$(/opt/deepvariant/bin/run_deepvariant --version) | sed 's/^.*version //; s/ .*\$//' ) END_VERSIONS """ @@ -45,15 +41,12 @@ process DEEPVARIANT_VCFSTATSREPORT { error "DEEPVARIANT module does not support Conda. Please use Docker / Singularity / Podman instead." } prefix = task.ext.prefix ?: "${meta.id}" - // WARN https://github.com/nf-core/modules/pull/5801#issuecomment-2194293755 - // FIXME Revert this on next version bump - def VERSION = '1.6.1' """ touch ${prefix}.visual_report.html cat <<-END_VERSIONS > versions.yml "${task.process}": - deepvariant: $VERSION + deepvariant: \$(echo \$(/opt/deepvariant/bin/run_deepvariant --version) | sed 's/^.*version //; s/ .*\$//' ) END_VERSIONS """ } diff --git a/modules/nf-core/deepvariant/vcfstatsreport/tests/main.nf.test.snap b/modules/nf-core/deepvariant/vcfstatsreport/tests/main.nf.test.snap index 9a9ac3cef60..9255ccb4539 100644 --- a/modules/nf-core/deepvariant/vcfstatsreport/tests/main.nf.test.snap +++ b/modules/nf-core/deepvariant/vcfstatsreport/tests/main.nf.test.snap @@ -11,7 +11,7 @@ ] ], "1": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ], "report": [ [ @@ -22,15 +22,15 @@ ] ], "versions": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-10-14T08:19:35.672028563" + "timestamp": "2025-01-14T15:13:32.380265779" }, "bcf": { "content": [ @@ -44,7 +44,7 @@ ] ], "1": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ], "report": [ [ @@ -55,15 +55,15 @@ ] ], "versions": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-10-11T07:47:10.485269156" + "timestamp": "2025-01-14T15:13:11.49442341" }, "vcf.gz - stub": { "content": [ @@ -77,7 +77,7 @@ ] ], "1": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ], "report": [ [ @@ -88,15 +88,15 @@ ] ], "versions": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-10-14T08:34:50.411910578" + "timestamp": "2025-01-14T15:13:59.468946068" }, "vcf.gz": { "content": [ @@ -110,7 +110,7 @@ ] ], "1": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ], "report": [ [ @@ -121,15 +121,15 @@ ] ], "versions": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-10-11T07:47:00.438649988" + "timestamp": "2025-01-14T15:12:52.602536212" }, "vcf": { "content": [ @@ -143,7 +143,7 @@ ] ], "1": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ], "report": [ [ @@ -154,15 +154,15 @@ ] ], "versions": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-10-11T07:44:07.427456921" + "timestamp": "2025-01-14T15:12:35.527450489" }, "bcf - stub": { "content": [ @@ -176,7 +176,7 @@ ] ], "1": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ], "report": [ [ @@ -187,15 +187,15 @@ ] ], "versions": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-10-14T08:35:03.341417618" + "timestamp": "2025-01-14T15:14:13.064758768" }, "bcf.gz - stub": { "content": [ @@ -209,7 +209,7 @@ ] ], "1": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ], "report": [ [ @@ -220,15 +220,15 @@ ] ], "versions": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-10-14T08:35:13.52398762" + "timestamp": "2025-01-14T15:14:26.7174912" }, "vcf - stub": { "content": [ @@ -242,7 +242,7 @@ ] ], "1": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ], "report": [ [ @@ -253,14 +253,14 @@ ] ], "versions": [ - "versions.yml:md5,3378d1cbd4b3ba7579dcd6c47266f996" + "versions.yml:md5,72414085057fedf473d874c39db9b4c1" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-10-14T08:34:35.977457571" + "timestamp": "2025-01-14T15:13:46.09138006" } } \ No newline at end of file diff --git a/modules/nf-core/gprofiler2/gost/main.nf b/modules/nf-core/gprofiler2/gost/main.nf index acb18b938ac..8428f514b74 100644 --- a/modules/nf-core/gprofiler2/gost/main.nf +++ b/modules/nf-core/gprofiler2/gost/main.nf @@ -4,8 +4,8 @@ process GPROFILER2_GOST { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/mulled-v2-3712554873398d849d0d11b22440f41febbc4ede:aa19bb8afc0ec6456a4f3cd650f7577c3bbdd4f3-0': - 'biocontainers/mulled-v2-3712554873398d849d0d11b22440f41febbc4ede:aa19bb8afc0ec6456a4f3cd650f7577c3bbdd4f3-0' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/e4/e4b0e10a72db4ad519c128c4e3cef6e10bc1a83440af31f105ab389a5532589a/data': + 'community.wave.seqera.io/library/r-ggplot2_r-gprofiler2:fab855ea9f680400' }" input: tuple val(meta), path(de_file) @@ -28,4 +28,24 @@ process GPROFILER2_GOST { script: template 'gprofiler2_gost.R' + + stub: + def prefix = task.ext.prefix ?: meta.id + """ + touch ${prefix}.gprofiler2.all_enriched_pathways.tsv + touch ${prefix}.gprofiler2.gost_results.rds + touch ${prefix}.gprofiler2.gostplot.png + touch ${prefix}.gprofiler2.gostplot.html + touch ${prefix}.gprofiler2.*.sub_enriched_pathways.tsv + touch ${prefix}.gprofiler2.*.sub_enriched_pathways.png + touch ${prefix}.ENSG_filtered.gmt + touch ${prefix}.R_sessionInfo.log + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + r-base: \$(echo \$(R --version 2>&1) | sed 's/^.*R version //; s/ .*\$//') + r-ggplot2: \$(Rscript -e "library(ggplot2); cat(as.character(packageVersion('ggplot2')))") + r-gprofiler2: \$(Rscript -e "library(gprofiler2); cat(as.character(packageVersion('gprofiler2')))") + END_VERSIONS + """ } diff --git a/modules/nf-core/gprofiler2/gost/templates/gprofiler2_gost.R b/modules/nf-core/gprofiler2/gost/templates/gprofiler2_gost.R index 1de2a754094..0e2c0f1e621 100644 --- a/modules/nf-core/gprofiler2/gost/templates/gprofiler2_gost.R +++ b/modules/nf-core/gprofiler2/gost/templates/gprofiler2_gost.R @@ -449,7 +449,7 @@ gprofiler2.version <- as.character(packageVersion('gprofiler2')) ggplot2.version <- as.character(packageVersion('ggplot2')) writeLines( c( - '"\${task.process}":', + '"$task.process":', paste(' r-base:', r.version), paste(' r-ggplot2:', ggplot2.version), paste(' r-gprofiler2:', gprofiler2.version) diff --git a/modules/nf-core/gprofiler2/gost/tests/main.nf.test b/modules/nf-core/gprofiler2/gost/tests/main.nf.test new file mode 100644 index 00000000000..28e9e751395 --- /dev/null +++ b/modules/nf-core/gprofiler2/gost/tests/main.nf.test @@ -0,0 +1,110 @@ +nextflow_process { + + name "Test Process GPROFILER2_GOST" + script "../main.nf" + process "GPROFILER2_GOST" + config "./nextflow.config" + + tag "modules" + tag "modules_nfcore" + tag "gprofiler" + tag "gprofiler_gost" + tag "gost" + tag "gprofiler2/gost" + tag "gprofiler2" + + test("test") { + + when { + params{ + gprofiler2_significant = true + gprofiler2_measure_underrepresentation = false + gprofiler2_correction_method = "gSCS" + gprofiler2_evcodes = false + gprofiler2_max_qval = 0.05 + gprofiler2_domain_scope = "annotated" + gprofiler2_min_diff = 1 + report_round_digits = 4 + gprofiler2_palette_name = "Blues" + differential_feature_id_column = "gene_id" + gprofiler2_token = null + gprofiler2_organism = "mmusculus" + gprofiler2_background_column = null + gprofiler2_sources = null + + module_args = [ + "--significant \"${params.gprofiler2_significant}\"", + "--measure_underrepresentation \"${params.gprofiler2_measure_underrepresentation}\"", + "--correction_method \"${params.gprofiler2_correction_method}\"", + "--evcodes \"${params.gprofiler2_evcodes}\"", + "--pval_threshold \"${params.gprofiler2_max_qval}\"", + "--domain_scope ${params.gprofiler2_domain_scope}", + "--min_diff \"${params.gprofiler2_min_diff}\"", + "--round_digits ${params.report_round_digits}", + "--palette_name \"${params.gprofiler2_palette_name}\"", + ((params.differential_feature_id_column == null) ? '' : "--de_id_column \"${params.differential_feature_id_column}\""), + ((params.gprofiler2_token == null) ? '' : "--token \"${params.gprofiler2_token}\""), + ((params.gprofiler2_organism == null) ? '' : "--organism \"${params.gprofiler2_organism}\""), + ((params.gprofiler2_background_column == null) ? '' : "--background_column \"${params.gprofiler2_background_column}\""), + ((params.gprofiler2_sources == null) ? '' : "--sources \"${params.gprofiler2_sources}\"") + ].join(' ').trim() + } + process { + """ + input[0] = [ + ['id':'Condition_genotype_WT_KO', 'variable':'Condition genotype', 'reference':'WT', 'target':'KO', 'blocking':'batch'], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/Condition_genotype_WT_KO.deseq2.results_filtered.tsv", checkIfExists: true) + ] + input[1] = file(params.modules_testdata_base_path + "genomics/mus_musculus/gene_set_analysis/mh.all.v2022.1.Mm.symbols.gmt", checkIfExists: true) + input[2] = file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/study.filtered.tsv", checkIfExists: true) + """ + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot( + process.out.all_enrich, + process.out.plot_png, + process.out.sub_enrich, + process.out.sub_plot, + process.out.filtered_gmt, + process.out.session_info.collect{ meta,session_info -> file(session_info).name }, //assert unstable file + process.out.versions, + process.out.plot_html.collect{ meta,html -> file(html).name }, //assert unstable file + process.out.rds.collect{ meta,rds -> file(rds).name } //assert unstable file + ).match() + } + ) + } + } + + test("stub") { + + options "-stub" + + when { + params{ + module_args = null + } + process { + """ + input[0] = [ + ['id':'Condition_genotype_WT_KO', 'variable':'Condition genotype', 'reference':'WT', 'target':'KO', 'blocking':'batch'], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/Condition_genotype_WT_KO.deseq2.results_filtered.tsv", checkIfExists: true) + ] + input[1] = file(params.modules_testdata_base_path + "genomics/mus_musculus/gene_set_analysis/mh.all.v2022.1.Mm.symbols.gmt", checkIfExists: true) + input[2] = file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/study.filtered.tsv", checkIfExists: true) + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/nf-core/gprofiler2/gost/tests/main.nf.test.snap b/modules/nf-core/gprofiler2/gost/tests/main.nf.test.snap new file mode 100644 index 00000000000..0a052d5cca3 --- /dev/null +++ b/modules/nf-core/gprofiler2/gost/tests/main.nf.test.snap @@ -0,0 +1,303 @@ +{ + "test": { + "content": [ + [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.gprofiler2.all_enriched_pathways.tsv:md5,1134a02ca061c463bcbff277eefbfb19" + ] + ], + [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.gprofiler2.gostplot.png:md5,4b83d1bcf7dc9dbf6cef3d545e440c5b" + ] + ], + [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + [ + "Condition_genotype_WT_KO.gprofiler2.GO:BP.sub_enriched_pathways.tsv:md5,d527b94cdb160070bcaa0bfb0cecf914", + "Condition_genotype_WT_KO.gprofiler2.GO:CC.sub_enriched_pathways.tsv:md5,ef418c3f06d50446317928e37ec8ddfb", + "Condition_genotype_WT_KO.gprofiler2.GO:MF.sub_enriched_pathways.tsv:md5,e460d4917feb0b64d334a528f59e0731", + "Condition_genotype_WT_KO.gprofiler2.HP.sub_enriched_pathways.tsv:md5,865d8f092503552831c51d775a98c6eb", + "Condition_genotype_WT_KO.gprofiler2.KEGG.sub_enriched_pathways.tsv:md5,413724002abe683f376ea914d4f21ade", + "Condition_genotype_WT_KO.gprofiler2.MIRNA.sub_enriched_pathways.tsv:md5,fce81051d7af955ddb2925ba2da9ff57", + "Condition_genotype_WT_KO.gprofiler2.REAC.sub_enriched_pathways.tsv:md5,e89e1876698ea644671a0720c85f4dbb", + "Condition_genotype_WT_KO.gprofiler2.TF.sub_enriched_pathways.tsv:md5,e272217ec7fcf01ea463ab8bcc8335cf", + "Condition_genotype_WT_KO.gprofiler2.WP.sub_enriched_pathways.tsv:md5,fdd1efa836d85bb127e933e925290cba" + ] + ] + ], + [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + [ + "Condition_genotype_WT_KO.gprofiler2.GO:BP.sub_enriched_pathways.png:md5,d89498267e985adf0ad1266e2deb9f48", + "Condition_genotype_WT_KO.gprofiler2.GO:CC.sub_enriched_pathways.png:md5,e04cdd51b200671613254d021d3af242", + "Condition_genotype_WT_KO.gprofiler2.GO:MF.sub_enriched_pathways.png:md5,33ea0652d78111978677acde0fe7f807", + "Condition_genotype_WT_KO.gprofiler2.HP.sub_enriched_pathways.png:md5,6c040ac4baba73ae5637b00650e6aea1", + "Condition_genotype_WT_KO.gprofiler2.KEGG.sub_enriched_pathways.png:md5,fbd232c4eeced95ceda60b43a02dbe1f", + "Condition_genotype_WT_KO.gprofiler2.MIRNA.sub_enriched_pathways.png:md5,956880d3bf4852a06b0ffaaaba565732", + "Condition_genotype_WT_KO.gprofiler2.REAC.sub_enriched_pathways.png:md5,0e8f9217d275668986771dc7fede3170", + "Condition_genotype_WT_KO.gprofiler2.TF.sub_enriched_pathways.png:md5,0697164bc87e95e6508db966df94e01e", + "Condition_genotype_WT_KO.gprofiler2.WP.sub_enriched_pathways.png:md5,09976762c7541ff9e5009e8763986845" + ] + ] + ], + [ + + ], + [ + "R_sessionInfo.log" + ], + [ + "versions.yml:md5,7ff4ab78463faf97bba7e698ed9a9069" + ], + [ + "Condition_genotype_WT_KO.gprofiler2.gostplot.html" + ], + [ + "Condition_genotype_WT_KO.gprofiler2.gost_results.rds" + ] + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-09T13:43:18.555455129" + }, + "stub": { + "content": [ + { + "0": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.gprofiler2.all_enriched_pathways.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.gprofiler2.gost_results.rds:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "2": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.gprofiler2.gostplot.png:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "3": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.gprofiler2.gostplot.html:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "4": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.gprofiler2.*.sub_enriched_pathways.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "5": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.gprofiler2.*.sub_enriched_pathways.png:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "6": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.ENSG_filtered.gmt:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "7": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.R_sessionInfo.log:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "8": [ + "versions.yml:md5,7ff4ab78463faf97bba7e698ed9a9069" + ], + "all_enrich": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.gprofiler2.all_enriched_pathways.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "filtered_gmt": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.ENSG_filtered.gmt:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "plot_html": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.gprofiler2.gostplot.html:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "plot_png": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.gprofiler2.gostplot.png:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "rds": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.gprofiler2.gost_results.rds:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "session_info": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.R_sessionInfo.log:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "sub_enrich": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.gprofiler2.*.sub_enriched_pathways.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "sub_plot": [ + [ + { + "id": "Condition_genotype_WT_KO", + "variable": "Condition genotype", + "reference": "WT", + "target": "KO", + "blocking": "batch" + }, + "Condition_genotype_WT_KO.gprofiler2.*.sub_enriched_pathways.png:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,7ff4ab78463faf97bba7e698ed9a9069" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-09T13:43:36.462475057" + } +} \ No newline at end of file diff --git a/modules/nf-core/gprofiler2/gost/tests/nextflow.config b/modules/nf-core/gprofiler2/gost/tests/nextflow.config new file mode 100644 index 00000000000..1a77344d7ff --- /dev/null +++ b/modules/nf-core/gprofiler2/gost/tests/nextflow.config @@ -0,0 +1,3 @@ +process { + ext.args = params.module_args +} \ No newline at end of file diff --git a/modules/nf-core/gridss/generateponbedpe/environment.yml b/modules/nf-core/gridss/generateponbedpe/environment.yml new file mode 100644 index 00000000000..db37d675e60 --- /dev/null +++ b/modules/nf-core/gridss/generateponbedpe/environment.yml @@ -0,0 +1,5 @@ +channels: + - conda-forge + - bioconda +dependencies: + - bioconda::gridss=2.13.2 diff --git a/modules/nf-core/gridss/gridssgenerateponbedpe/main.nf b/modules/nf-core/gridss/generateponbedpe/main.nf similarity index 79% rename from modules/nf-core/gridss/gridssgenerateponbedpe/main.nf rename to modules/nf-core/gridss/generateponbedpe/main.nf index 29ffbae4df6..b1cd88542ad 100644 --- a/modules/nf-core/gridss/gridssgenerateponbedpe/main.nf +++ b/modules/nf-core/gridss/generateponbedpe/main.nf @@ -1,14 +1,14 @@ -process GRIDSS_GRIDSSGENERATEPONBEDPE { +process GRIDSS_GENERATEPONBEDPE { tag "$meta.id" label 'process_high' - conda "bioconda::gridss=2.13.2" + conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? 'https://depot.galaxyproject.org/singularity/gridss:2.13.2--h270b39a_0': 'biocontainers/gridss:2.13.2--h270b39a_0' }" input: - tuple val(meta), path(vcf), path(bedpe), path(bed) + tuple val(meta) , path(vcf), path(bedpe), path(bed) tuple val(meta2), path(fasta) tuple val(meta3), path(fai) tuple val(meta4), path(bwa_index) @@ -24,18 +24,17 @@ process GRIDSS_GRIDSSGENERATEPONBEDPE { script: def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" - def vcf = vcf ? "INPUT=${vcf}" : "" - def bedpe = bedpe ? "INPUT_BEDPE=${bedpe}" : "" - def bed = bed ? "INPUT_BED=${bed}" : "" + def vcf_command = vcf ? "INPUT=${vcf}" : "" + def bedpe_command = bedpe ? "INPUT_BEDPE=${bedpe}" : "" + def bed_command = bed ? "INPUT_BED=${bed}" : "" def bwa = bwa_index ? "cp -s ${bwa_index}/* ." : "" def ref = bwa_index ? "REFERENCE_SEQUENCE=${fasta}" : "" - """ ${bwa} GeneratePonBedpe \\ - ${vcf} \\ - ${bedpe} \\ - ${bed} \\ + ${vcf_command} \\ + ${bedpe_command} \\ + ${bed_command} \\ ${ref} \\ OUTPUT_BEDPE=${prefix}.bedpe \\ OUTPUT_BED=${prefix}.bed \\ @@ -47,6 +46,7 @@ process GRIDSS_GRIDSSGENERATEPONBEDPE { GeneratePonBedpe: \$(echo \$(GeneratePonBedpe --version 2>&1)) END_VERSIONS """ + stub: def prefix = task.ext.prefix ?: "${meta.id}" """ diff --git a/modules/nf-core/gridss/gridssgenerateponbedpe/meta.yml b/modules/nf-core/gridss/generateponbedpe/meta.yml similarity index 94% rename from modules/nf-core/gridss/gridssgenerateponbedpe/meta.yml rename to modules/nf-core/gridss/generateponbedpe/meta.yml index fda9054e820..393bd8a56bc 100644 --- a/modules/nf-core/gridss/gridssgenerateponbedpe/meta.yml +++ b/modules/nf-core/gridss/generateponbedpe/meta.yml @@ -1,4 +1,4 @@ -name: "gridss_gridssgenerateponbedpe" +name: "gridss_generateponbedpe" description: GRIDSS is a module software suite containing tools useful for the detection of genomic rearrangements. keywords: @@ -8,14 +8,12 @@ keywords: - bed - vcf tools: - - "gridss": + - gridss: description: "GRIDSS: the Genomic Rearrangement IDentification Software Suite" - documentation: "https://github.com/PapenfussLab/gridss/wiki/GRIDSS-Documentation" tool_dev_url: "https://github.com/PapenfussLab/gridss" doi: "10.1186/s13059-021-02423-x" licence: ["GPL v3"] - identifier: biotools:gridss input: - - meta: @@ -60,8 +58,8 @@ input: e.g. [ id:'test'] - bwa_index: type: directory - description: OPTIONAL - The BWA index created from the reference fasta, will - be generated by Gridss in the setupreference step + description: OPTIONAL - The BWA index created from the reference fasta, will be generated by Gridss in the setupreference step + output: - bedpe: - meta: @@ -90,3 +88,5 @@ output: pattern: "versions.yml" authors: - "@kubranarci" +maintainers: + - "@famosab" diff --git a/modules/nf-core/gridss/generateponbedpe/tests/main.nf.test b/modules/nf-core/gridss/generateponbedpe/tests/main.nf.test new file mode 100644 index 00000000000..3ac3b2dfa90 --- /dev/null +++ b/modules/nf-core/gridss/generateponbedpe/tests/main.nf.test @@ -0,0 +1,107 @@ +nextflow_process { + + name "Test Process GRIDSS_GENERATEPONBEDPE" + script "../main.nf" + process "GRIDSS_GENERATEPONBEDPE" + config "./nextflow.config" + + tag "modules" + tag "modules_nfcore" + tag "gridss" + tag "gridss/generateponbedpe" + tag "gridss/gridss" + tag "bwa/index" + + setup { + + run("BWA_INDEX") { + script "../../../bwa/index/main.nf" + process { + """ + input[0] = [ [id:'fasta'], + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) + ] + """ + } + } + + run("GRIDSS_GRIDSS") { + script "../../../gridss/gridss/main.nf" + process { + """ + input[0] = [ [ id:'test' ], // meta map + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/illumina/bam/test.paired_end.sorted.bam', checkIfExists: true), //inputs + [] //assembly + ] + input[1] = [ [id:'fasta'], + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) + ] + input[2] = [ [id:'fasta_fai'], + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta.fai', checkIfExists: true) + ] + input[3] = BWA_INDEX.out.index + """ + } + } + + } + + test("human - vcf") { + + when { + process { + """ + input[0] = GRIDSS_GRIDSS.out.vcf.map{ it -> tuple( it[0], it[1], [], [] ) } + input[1] = [ [id:'fasta'], + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) + ] + input[2] = [ [id:'fasta_fai'], + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta.fai', checkIfExists: true) + ] + input[3] = BWA_INDEX.out.index + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + file(process.out.bed.get(0).get(1)).name, + file(process.out.bedpe.get(0).get(1)).name + ).match() } + ) + } + + } + + test("human - vcf - stub") { + + options "-stub" + + when { + process { + """ + input[0] = GRIDSS_GRIDSS.out.vcf.map{ it -> tuple( it[0], it[1], [], [] ) } + input[1] = [ [id:'fasta'], + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) + ] + input[2] = [ [id:'fasta_fai'], + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta.fai', checkIfExists: true) + ] + input[3] = BWA_INDEX.out.index + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + +} diff --git a/modules/nf-core/gridss/generateponbedpe/tests/main.nf.test.snap b/modules/nf-core/gridss/generateponbedpe/tests/main.nf.test.snap new file mode 100644 index 00000000000..3e147c56470 --- /dev/null +++ b/modules/nf-core/gridss/generateponbedpe/tests/main.nf.test.snap @@ -0,0 +1,65 @@ +{ + "human - vcf": { + "content": [ + [ + "versions.yml:md5,645a222948827e5376957f8b60fc2a05" + ], + "test.bed", + "test.bedpe" + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.04.4" + }, + "timestamp": "2024-08-02T10:51:47.865144" + }, + "human - vcf - stub": { + "content": [ + { + "0": [ + [ + { + "id": "test" + }, + "test.bedpe:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + [ + { + "id": "test" + }, + "test.bed:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "2": [ + "versions.yml:md5,645a222948827e5376957f8b60fc2a05" + ], + "bed": [ + [ + { + "id": "test" + }, + "test.bed:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "bedpe": [ + [ + { + "id": "test" + }, + "test.bedpe:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,645a222948827e5376957f8b60fc2a05" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-09T16:56:29.984471332" + } +} \ No newline at end of file diff --git a/modules/nf-core/gridss/generateponbedpe/tests/nextflow.config b/modules/nf-core/gridss/generateponbedpe/tests/nextflow.config new file mode 100644 index 00000000000..bc5abadba4d --- /dev/null +++ b/modules/nf-core/gridss/generateponbedpe/tests/nextflow.config @@ -0,0 +1,8 @@ +process { + withName: BWA_INDEX { + ext.prefix = 'genome.fasta' + } + withName: GRIDSS_GENERATEPONBEDPE { + ext.args = 'NORMAL_ORDINAL=1 MIN_BREAKPOINT_QUAL=10' + } +} diff --git a/modules/nf-core/gridss/generateponbedpe/tests/tags.yml b/modules/nf-core/gridss/generateponbedpe/tests/tags.yml new file mode 100644 index 00000000000..941c9997a85 --- /dev/null +++ b/modules/nf-core/gridss/generateponbedpe/tests/tags.yml @@ -0,0 +1,2 @@ +gridss/generateponbedpe: + - "modules/nf-core/gridss/generateponbedpe/**" diff --git a/modules/nf-core/gridss/gridss/main.nf b/modules/nf-core/gridss/gridss/main.nf index 1f7551de667..3ac5961ed54 100644 --- a/modules/nf-core/gridss/gridss/main.nf +++ b/modules/nf-core/gridss/gridss/main.nf @@ -36,6 +36,7 @@ process GRIDSS_GRIDSS { --threads ${task.cpus} \\ --jvmheap ${task.memory.toGiga() - 1}g \\ --otherjvmheap ${task.memory.toGiga() - 1}g \\ + $args \\ ${inputs} cat <<-END_VERSIONS > versions.yml diff --git a/modules/nf-core/gridss/gridss/tests/main.nf.test b/modules/nf-core/gridss/gridss/tests/main.nf.test index 610dfd5eba9..77619d3fa1e 100644 --- a/modules/nf-core/gridss/gridss/tests/main.nf.test +++ b/modules/nf-core/gridss/gridss/tests/main.nf.test @@ -45,10 +45,12 @@ nextflow_process { } then { + assert process.success assertAll( - { assert process.success }, - { assert snapshot(process.out.versions).match() }, - { assert path(process.out.vcf.get(0).get(1)).linesGzip.contains("##fileformat=VCFv4.2") } + { assert snapshot( + path(process.out.vcf.get(0).get(1)).vcf.summary, // no SVs exist in the test data + process.out.versions + ).match() } ) } @@ -74,10 +76,12 @@ nextflow_process { } then { + assert process.success assertAll( - { assert process.success }, - { assert snapshot(process.out.versions).match() }, - { assert path(process.out.vcf.get(0).get(1)).linesGzip.contains("##fileformat=VCFv4.2") } + { assert snapshot( + path(process.out.vcf.get(0).get(1)).vcf.summary, // no SVs exist in the test data + process.out.versions + ).match() } ) } @@ -103,10 +107,12 @@ nextflow_process { } then { + assert process.success assertAll( - { assert process.success }, - { assert snapshot(process.out.versions).match() }, - { assert path(process.out.vcf.get(0).get(1)).linesGzip.contains("##fileformat=VCFv4.2") } + { assert snapshot( + path(process.out.vcf.get(0).get(1)).vcf.summary, // no SVs exist in the test data + process.out.versions + ).match() } ) } @@ -134,8 +140,8 @@ nextflow_process { } then { + assert process.success assertAll( - { assert process.success }, { assert snapshot(process.out).match() } ) } diff --git a/modules/nf-core/gridss/gridss/tests/main.nf.test.snap b/modules/nf-core/gridss/gridss/tests/main.nf.test.snap index 1041705abee..c44c4d3d603 100644 --- a/modules/nf-core/gridss/gridss/tests/main.nf.test.snap +++ b/modules/nf-core/gridss/gridss/tests/main.nf.test.snap @@ -27,45 +27,48 @@ } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.2" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-07-10T11:48:56.7778" + "timestamp": "2025-01-10T07:00:56.675390385" }, "human - bam - bwa": { "content": [ + "VcfFile [chromosomes=[], sampleCount=1, variantCount=0, phased=true, phasedAutodetect=true]", [ "versions.yml:md5,139867df5d7eaf22a89ae574f08e8d80" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.2" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-07-10T11:47:23.943354" + "timestamp": "2025-01-10T06:59:57.080747265" }, "human - bam": { "content": [ + "VcfFile [chromosomes=[], sampleCount=1, variantCount=0, phased=true, phasedAutodetect=true]", [ "versions.yml:md5,139867df5d7eaf22a89ae574f08e8d80" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.2" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-07-10T11:48:06.074469" + "timestamp": "2025-01-10T07:00:21.325393087" }, "human - cram": { "content": [ + "VcfFile [chromosomes=[], sampleCount=1, variantCount=0, phased=true, phasedAutodetect=true]", [ "versions.yml:md5,139867df5d7eaf22a89ae574f08e8d80" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.2" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-07-10T11:48:45.270441" + "timestamp": "2025-01-10T07:00:45.157863981" } -} +} \ No newline at end of file diff --git a/modules/nf-core/gridss/gridsssomaticfilter/main.nf b/modules/nf-core/gridss/gridsssomaticfilter/main.nf deleted file mode 100644 index c61231c3f0b..00000000000 --- a/modules/nf-core/gridss/gridsssomaticfilter/main.nf +++ /dev/null @@ -1,53 +0,0 @@ -process GRIDSS_GRIDSSSOMATICFILTER { - tag "$meta.id" - label 'process_high' - - conda "bioconda::gridss=2.13.2" - container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/gridss:2.13.2--h270b39a_0': - 'biocontainers/gridss:2.13.2--h270b39a_0' }" - - input: - tuple val(meta), path(vcf) - tuple val(meta2), path(pondir) - - output: - tuple val(meta), path("*.high_confidence_somatic.vcf.bgz") , emit: high_conf_sv - tuple val(meta), path("*.all_somatic.vcf.bgz") , emit: all_sv - 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 pondir = pondir ? "--pondir ${pondir}" : "" - def VERSION = '2.13.2' // WARN: Version information not provided by tool on CLI. Please update this string when bumping container versions. - - """ - gridss_somatic_filter \\ - --input $vcf \\ - ${pondir} \\ - --output ${prefix}.high_confidence_somatic.vcf \\ - --fulloutput ${prefix}.all_somatic.vcf \\ - $args - - cat <<-END_VERSIONS > versions.yml - "${task.process}": - gridss: ${VERSION} - END_VERSIONS - """ - stub: - def prefix = task.ext.prefix ?: "${meta.id}" - def VERSION = '2.13.2' // WARN: Version information not provided by tool on CLI. Please update this string when bumping container versions. - """ - touch ${prefix}.high_confidence_somatic.vcf.bgz - touch ${prefix}.all_somatic.vcf.bgz - - cat <<-END_VERSIONS > versions.yml - "${task.process}": - gridss: ${VERSION} - END_VERSIONS - """ -} diff --git a/modules/nf-core/gridss/somaticfilter/environment.yml b/modules/nf-core/gridss/somaticfilter/environment.yml new file mode 100644 index 00000000000..db37d675e60 --- /dev/null +++ b/modules/nf-core/gridss/somaticfilter/environment.yml @@ -0,0 +1,5 @@ +channels: + - conda-forge + - bioconda +dependencies: + - bioconda::gridss=2.13.2 diff --git a/modules/nf-core/gridss/somaticfilter/main.nf b/modules/nf-core/gridss/somaticfilter/main.nf new file mode 100644 index 00000000000..6dc1ed7671f --- /dev/null +++ b/modules/nf-core/gridss/somaticfilter/main.nf @@ -0,0 +1,87 @@ +process GRIDSS_SOMATICFILTER { + tag "$meta.id" + label 'process_high' + + conda "${moduleDir}/environment.yml" + container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? + 'https://depot.galaxyproject.org/singularity/gridss:2.13.2--h270b39a_0': + 'biocontainers/gridss:2.13.2--h270b39a_0' }" + + input: + tuple val(meta) , path(vcf) + tuple val(meta2), path(pondir) + + output: + tuple val(meta), path("*.high_confidence_somatic.vcf.bgz") , emit: high_conf_sv + tuple val(meta), path("*.all_somatic.vcf.bgz") , emit: all_sv + 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 pondir_command = pondir ? "--pondir ${pondir}" : "" + def VERSION = '2.13.2' // WARN: Version information not provided by tool on CLI. Please update this string when bumping container versions. + """ + ## There is a R version issue in the current (2.13.2) bioconda implementation that is hard to pin down + ## The gridss_somatic_filter wrapper inside the bioconda container hardcodes scriptdir, but we can override that + + #/usr/local/share/gridss-2.13.2-0 + #/opt/conda/share/gridss-2.13.2-4 + + #FILE=\$(find / 2>/dev/null -type f -name gridss_somatic_filter) + #echo \$FILE + #ORIGDIR=\$(basename \$FILE ) + #echo \$ORIGDIR + + # Find the script and its directory in both conda and docker environments + SCRIPT_PATH=\$(find / -name libgridss.R 2>/dev/null | head -n 1) + + if [ -z "\$SCRIPT_PATH" ]; then + echo "Error: libgridss.R not found" + exit 1 + fi + + # Extract the directory containing the script + SCRIPT_DIR=\$(dirname "\$SCRIPT_PATH") + + echo "libgridss.R found in directory: \$SCRIPT_DIR" + + # copy the two script files from the container into the working directory + cp \${SCRIPT_DIR}/libgridss.R . + cp \${SCRIPT_DIR}/gridss.config.R . + + # end the libgridss.R script based on https://github.com/PapenfussLab/gridss/issues/635 + # This adds as.character() around the expression on line 780. + sed -i '780s/VariantAnnotation::fixed(vcf)\$ALT/as.character(&)/' libgridss.R + + # need to then pass a different --scriptdir + \${SCRIPT_DIR}/gridss_somatic_filter \\ + --input $vcf \\ + ${pondir_command} \\ + --output ${prefix}.high_confidence_somatic.vcf \\ + --fulloutput ${prefix}.all_somatic.vcf \\ + --scriptdir . \\ + $args + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + gridss: ${VERSION} + END_VERSIONS + """ + + stub: + def prefix = task.ext.prefix ?: "${meta.id}" + def VERSION = '2.13.2' // WARN: Version information not provided by tool on CLI. Please update this string when bumping container versions. + """ + echo "" | bgzip > ${prefix}.high_confidence_somatic.vcf.bgz + echo "" | bgzip > ${prefix}.all_somatic.vcf.bgz + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + gridss: ${VERSION} + END_VERSIONS + """ +} diff --git a/modules/nf-core/gridss/gridsssomaticfilter/meta.yml b/modules/nf-core/gridss/somaticfilter/meta.yml similarity index 93% rename from modules/nf-core/gridss/gridsssomaticfilter/meta.yml rename to modules/nf-core/gridss/somaticfilter/meta.yml index cc54ea9ef4f..2807b69b2a6 100644 --- a/modules/nf-core/gridss/gridsssomaticfilter/meta.yml +++ b/modules/nf-core/gridss/somaticfilter/meta.yml @@ -1,19 +1,17 @@ -name: "gridss_gridsssomaticfilter" -description: GRIDSS is a module software suite containing tools useful for the detection - of genomic rearrangements. +name: "gridss_somaticfilter" +description: GRIDSS is a module software suite containing tools useful for the detection of genomic rearrangements. keywords: - gridss - structural variants - somatic variants - vcf tools: - - "gridss": + - gridss: description: "GRIDSS: the Genomic Rearrangement IDentification Software Suite" documentation: "https://github.com/PapenfussLab/gridss/wiki/GRIDSS-Documentation" tool_dev_url: "https://github.com/PapenfussLab/gridss" doi: "10.1186/s13059-021-02423-x" licence: ["GPL v3"] - identifier: biotools:gridss input: - - meta: @@ -62,3 +60,5 @@ output: pattern: "versions.yml" authors: - "@kubranarci" +maintainers: + - "@famosab" diff --git a/modules/nf-core/gridss/somaticfilter/tests/main.nf.test b/modules/nf-core/gridss/somaticfilter/tests/main.nf.test new file mode 100644 index 00000000000..f6c3f2b067c --- /dev/null +++ b/modules/nf-core/gridss/somaticfilter/tests/main.nf.test @@ -0,0 +1,58 @@ +nextflow_process { + + name "Test Process GRIDSS_SOMATICFILTER" + script "../main.nf" + process "GRIDSS_SOMATICFILTER" + + tag "modules" + tag "modules_nfcore" + tag "gridss" + tag "gridss/somaticfilter" + + test("human - vcf") { + + when { + process { + """ + input[0] = [ [ id:'test' ], // meta map + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/illumina/vcf/gridss.somatic.vcf', checkIfExists: true) + ] + input[1] = [ [], [] ] // pondir + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + + test("human - vcf - stub") { + + options "-stub" + + when { + process { + """ + input[0] = [ [ id:'test' ], // meta map + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/illumina/vcf/gridss.somatic.vcf', checkIfExists: true) + ] + input[1] = [ [], [] ] // pondir + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + +} diff --git a/modules/nf-core/gridss/somaticfilter/tests/main.nf.test.snap b/modules/nf-core/gridss/somaticfilter/tests/main.nf.test.snap new file mode 100644 index 00000000000..ef6cfe2193e --- /dev/null +++ b/modules/nf-core/gridss/somaticfilter/tests/main.nf.test.snap @@ -0,0 +1,100 @@ +{ + "human - vcf": { + "content": [ + { + "0": [ + [ + { + "id": "test" + }, + "test.high_confidence_somatic.vcf.bgz:md5,61360b16fdd5984dda77e404341bdb44" + ] + ], + "1": [ + [ + { + "id": "test" + }, + "test.all_somatic.vcf.bgz:md5,a546713e8e933e20ac1aa2d52c52d8d2" + ] + ], + "2": [ + "versions.yml:md5,2fef38f29259fe34141d3530bb785cb1" + ], + "all_sv": [ + [ + { + "id": "test" + }, + "test.all_somatic.vcf.bgz:md5,a546713e8e933e20ac1aa2d52c52d8d2" + ] + ], + "high_conf_sv": [ + [ + { + "id": "test" + }, + "test.high_confidence_somatic.vcf.bgz:md5,61360b16fdd5984dda77e404341bdb44" + ] + ], + "versions": [ + "versions.yml:md5,2fef38f29259fe34141d3530bb785cb1" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-14T14:29:46.249392182" + }, + "human - vcf - stub": { + "content": [ + { + "0": [ + [ + { + "id": "test" + }, + "test.high_confidence_somatic.vcf.bgz:md5,17007ddef7fc2c09c82a0d686b53f8b6" + ] + ], + "1": [ + [ + { + "id": "test" + }, + "test.all_somatic.vcf.bgz:md5,17007ddef7fc2c09c82a0d686b53f8b6" + ] + ], + "2": [ + "versions.yml:md5,2fef38f29259fe34141d3530bb785cb1" + ], + "all_sv": [ + [ + { + "id": "test" + }, + "test.all_somatic.vcf.bgz:md5,17007ddef7fc2c09c82a0d686b53f8b6" + ] + ], + "high_conf_sv": [ + [ + { + "id": "test" + }, + "test.high_confidence_somatic.vcf.bgz:md5,17007ddef7fc2c09c82a0d686b53f8b6" + ] + ], + "versions": [ + "versions.yml:md5,2fef38f29259fe34141d3530bb785cb1" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-14T14:27:03.594195815" + } +} \ No newline at end of file diff --git a/modules/nf-core/gridss/somaticfilter/tests/tags.yml b/modules/nf-core/gridss/somaticfilter/tests/tags.yml new file mode 100644 index 00000000000..a5451af4f02 --- /dev/null +++ b/modules/nf-core/gridss/somaticfilter/tests/tags.yml @@ -0,0 +1,2 @@ +gridss/somaticfilter: + - "modules/nf-core/gridss/somaticfilter/**" diff --git a/modules/nf-core/immunedeconv/environment.yml b/modules/nf-core/immunedeconv/environment.yml new file mode 100644 index 00000000000..004fc39bed0 --- /dev/null +++ b/modules/nf-core/immunedeconv/environment.yml @@ -0,0 +1,5 @@ +channels: + - conda-forge + - bioconda +dependencies: + - bioconda::r-immunedeconv=2.1.2 diff --git a/modules/nf-core/immunedeconv/main.nf b/modules/nf-core/immunedeconv/main.nf new file mode 100644 index 00000000000..db0aa7b56a9 --- /dev/null +++ b/modules/nf-core/immunedeconv/main.nf @@ -0,0 +1,37 @@ +process IMMUNEDECONV { + tag "$meta.id" + label 'process_single' + + 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/22/22cb85f1b69ceff45b83e0fdb7b96d9ae29c8aafeaa0707d64cc4628982977ab/data' : + 'community.wave.seqera.io/library/r-immunedeconv:2.1.2--e1bb1ea1cf505cb3' }" + + input: + tuple val(meta), path(input_file), val(method), val(function) + val gene_symbol_col + + output: + tuple val(meta), path("*.deconvolution_results.tsv"), emit: deconv_table + tuple val(meta), path("*.png"), emit: deconv_plots, optional: true + path "versions.yml", emit: versions + + when: + task.ext.when == null || task.ext.when + + script: + template 'immunedeconv.R' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.deconvolution_results.tsv + touch ${prefix}.plot1_stacked_bar_chart.png + touch ${prefix}.plot2_points_with_facets.png + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + r-immunedeconv: \$(Rscript -e "cat(as.character(packageVersion('immunedeconv')))") + END_VERSIONS + """ +} diff --git a/modules/nf-core/immunedeconv/meta.yml b/modules/nf-core/immunedeconv/meta.yml new file mode 100644 index 00000000000..4eea8be7bc5 --- /dev/null +++ b/modules/nf-core/immunedeconv/meta.yml @@ -0,0 +1,67 @@ +name: immunedeconv +description: Perform immune cell deconvolution using RNA-seq data and various computational methods. +keywords: + - Immune Deconvolution + - RNA-seq + - Bioinformatics Tools + - Computational Immunology +tools: + - immunedeconv: + description: | + The immunedeconv R package provides functions for immune cell deconvolution + from RNA-seq data. It supports multiple deconvolution methods and generates + results as well as visualizations. + homepage: https://github.com/icbi-lab/immunedeconv + documentation: https://icbi-lab.github.io/immunedeconv/ + licence: ["GPL-2"] +input: + - - meta: + type: map + description: | + Groovy Map containing sample information + e.g. `[ id:'sample1', single_end:false ]` + - input_file: + type: file + description: Input matrix with genes in rows and samples in columns. + pattern: "*.tsv" + - method: + type: string + description: The deconvolution method to use (e.g., 'CIBERSORT', 'EPIC', 'xCell'). + - function: + type: string + description: The specific function from immunedeconv to execute for analysis. + - - gene_symbol_col: + type: string + description: Column name for gene symbols in the matrix input file. +output: + - deconv_table: + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. `[ id:'sample1', single_end:false ]` + - "*.deconvolution_results.tsv": + type: file + description: Results table containing deconvolution data. + pattern: "*.deconvolution_results.tsv" + - deconv_plots: + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. `[ id:'sample1', single_end:false ]` + - "*.png": + type: file + description: Visualization plots generated during deconvolution. + pattern: "*.png" + - versions: + - versions.yml: + type: file + description: File containing software versions + pattern: "versions.yml" +authors: + - "@grst" + - "@nschcolnicov" +maintainers: + - "@grst" + - "@nschcolnicov" diff --git a/modules/nf-core/immunedeconv/templates/immunedeconv.R b/modules/nf-core/immunedeconv/templates/immunedeconv.R new file mode 100644 index 00000000000..6f0c7bad1a3 --- /dev/null +++ b/modules/nf-core/immunedeconv/templates/immunedeconv.R @@ -0,0 +1,89 @@ +#!/usr/bin/env Rscript + +library(dplyr) +library(ggplot2) +library(tidyr) +library(immunedeconv) +library(tibble) +library(readr) + +#Load prefix +prefix = ifelse('$task.ext.prefix' == 'null', '$meta.id', '$task.ext.prefix') + +# Load the TSV file and keep only $gene_symbol_col column + counts +gene_expression_matrix <- readr::read_tsv('$input_file') %>% + as.data.frame() %>% + dplyr::select( + dplyr::all_of('$gene_symbol_col'), # Keep the '$gene_symbol_col' column + where(~ !is.character(.)) # Include all non-string columns + ) %>% + tibble::column_to_rownames('$gene_symbol_col') + +# Check if the data is log-transformed or TPM-transformed +# Check range of values +min_value <- min(gene_expression_matrix, na.rm = TRUE) +max_value <- max(gene_expression_matrix, na.rm = TRUE) + +# Detect log-transformed data (values typically within a compressed range) +if (max_value < 100 && min_value >= 0) { + warning("The data appears to be log-transformed. Please provide TPM-transformed data.") +} + +# Detect TPM-transformed data (column sums should be close to 1,000,000) +column_sums <- colSums(gene_expression_matrix, na.rm = TRUE) +if (!all(abs(column_sums - 1e6) < 1e4)) { + warning("The data does not appear to be properly TPM-transformed. Ensure the data is normalized.") +} + +# Generate results +result <- immunedeconv::${function}(gene_expression_matrix, method = '$method') + +# Save the result to a CSV file +readr::write_tsv(result, paste0(prefix,'.deconvolution_results.tsv')) + +# Plot and save results +# Plot 1: Stacked bar chart +plot1 <- result %>% + gather(sample, fraction, -cell_type) %>% + ggplot(aes(x = sample, y = fraction, fill = cell_type)) + + geom_bar(stat = 'identity') + + coord_flip() + + scale_fill_brewer(palette = 'Paired') + + scale_x_discrete(limits = rev(levels(result))) + +# Save Plot 1 +ggsave(paste0(prefix,'.plot1_stacked_bar_chart.png'), plot = plot1, dpi = 300, width = 10, height = 8) + +# Plot 2: Points with facets +plot2 <- result %>% + gather(sample, score, -cell_type) %>% + ggplot(aes(x = sample, y = score, color = cell_type)) + + geom_point(size = 4) + + facet_wrap(~cell_type, scales = 'free_x', ncol = 3) + + scale_color_brewer(palette = 'Paired', guide = FALSE) + + coord_flip() + + theme_bw() + + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust = 1)) + +# Save Plot 2 +ggsave(paste0(prefix,'.plot2_points_with_facets.png'), plot = plot2, dpi = 300, width = 12, height = 10) + +################################################ +################################################ +## VERSIONS FILE ## +################################################ +################################################ + +immunedeconv_version <- as.character(packageVersion('immunedeconv')) + +writeLines( + c( + '"${task.process}":', + paste(' r-immunedeconv:', immunedeconv_version) + ), +'versions.yml') + +################################################ +################################################ +################################################ +################################################ \ No newline at end of file diff --git a/modules/nf-core/immunedeconv/tests/main.nf.test b/modules/nf-core/immunedeconv/tests/main.nf.test new file mode 100644 index 00000000000..683d1eff599 --- /dev/null +++ b/modules/nf-core/immunedeconv/tests/main.nf.test @@ -0,0 +1,107 @@ +nextflow_process { + + name "Test Process IMMUNEDECONV" + script "../main.nf" + process "IMMUNEDECONV" + tag "modules" + tag "modules_nfcore" + tag "immunedeconv" + + test("test_immunedeconv_bulkmat") { + + when { + process { + """ + input[0] = [ [id:"immunedeconv"], file(params.modules_testdata_base_path + 'genomics/mus_musculus/rnaseq_expression/bulk_mat.tsv', checkIfExists: true), "quantiseq", "deconvolute" ] + input[1] = "gene_symbol" + """ + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot( + process.out.deconv_table, + process.out.deconv_plots[0][1].collect{ file(it).name }, //assert unstable file + process.out.versions + ).match() + } + ) + } + } + + test("test_immunedeconv_custom_data_mouse") { + + when { + process { + """ + input[0] = [ [id:"immunedeconv"], file(params.modules_testdata_base_path + 'genomics/mus_musculus/rnaseq_expression/bulk_mat_mouse.tsv', checkIfExists: true), "mmcp_counter", "deconvolute_mouse" ] + input[1] = "gene_symbol" + """ + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot( + process.out.deconv_table, + process.out.deconv_plots[0][1].collect{ file(it).name }, //assert unstable file + process.out.versions + ).match() + } + ) + } + } + + test("test_immunedeconv_bulkmat_mouse") { + + when { + process { + """ + input[0] = [ [id:"immunedeconv"], file('https://raw.githubusercontent.com/nf-core/test-datasets/modules/data/genomics/mus_musculus/rnaseq_expression/SRP254919.salmon.merged.gene_counts.top1000cov.tsv', checkIfExists: true), "mmcp_counter", "deconvolute_mouse" ] + input[1] = "gene_name" + """ + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot( + process.out.deconv_table, + process.out.deconv_plots[0][1].collect{ file(it).name }, //assert unstable file + process.out.versions + ).match() + } + ) + } + } + + test("test_immunedeconv - stub") { + + options "-stub" + + when { + process { + """ + input[0] = [ [id:"immunedeconv"], file(params.modules_testdata_base_path + 'genomics/mus_musculus/rnaseq_expression/bulk_mat.tsv', checkIfExists: true), "quantiseq", "deconvolute" ] + input[1] = "gene_symbol" + """ + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot( + process.out.deconv_table, + process.out.deconv_plots[0][1].collect{ file(it).name }, //assert unstable file + process.out.versions + ).match() + } + ) + } + } +} diff --git a/modules/nf-core/immunedeconv/tests/main.nf.test.snap b/modules/nf-core/immunedeconv/tests/main.nf.test.snap new file mode 100644 index 00000000000..626161afb11 --- /dev/null +++ b/modules/nf-core/immunedeconv/tests/main.nf.test.snap @@ -0,0 +1,98 @@ +{ + "test_immunedeconv_bulkmat": { + "content": [ + [ + [ + { + "id": "immunedeconv" + }, + "immunedeconv.deconvolution_results.tsv:md5,7ea22a01f198957cbe8dae92015583ff" + ] + ], + [ + "immunedeconv.plot1_stacked_bar_chart.png", + "immunedeconv.plot2_points_with_facets.png" + ], + [ + "versions.yml:md5,e155e29c7a7b3ba2ef8e3ed4c495b929" + ] + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-15T17:53:32.201416758" + }, + "test_immunedeconv_bulkmat_mouse": { + "content": [ + [ + [ + { + "id": "immunedeconv" + }, + "immunedeconv.deconvolution_results.tsv:md5,3d7ed4550a0da2f63fcfd2e74605e7a3" + ] + ], + [ + "immunedeconv.plot1_stacked_bar_chart.png", + "immunedeconv.plot2_points_with_facets.png" + ], + [ + "versions.yml:md5,e155e29c7a7b3ba2ef8e3ed4c495b929" + ] + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-15T17:54:01.300160943" + }, + "test_immunedeconv - stub": { + "content": [ + [ + [ + { + "id": "immunedeconv" + }, + "immunedeconv.deconvolution_results.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + [ + "immunedeconv.plot1_stacked_bar_chart.png", + "immunedeconv.plot2_points_with_facets.png" + ], + [ + "versions.yml:md5,e155e29c7a7b3ba2ef8e3ed4c495b929" + ] + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-15T17:54:09.796182653" + }, + "test_immunedeconv_custom_data_mouse": { + "content": [ + [ + [ + { + "id": "immunedeconv" + }, + "immunedeconv.deconvolution_results.tsv:md5,5c69779bac914a28737eb40460807bec" + ] + ], + [ + "immunedeconv.plot1_stacked_bar_chart.png", + "immunedeconv.plot2_points_with_facets.png" + ], + [ + "versions.yml:md5,e155e29c7a7b3ba2ef8e3ed4c495b929" + ] + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-15T17:53:46.364238594" + } +} \ No newline at end of file diff --git a/modules/nf-core/kaiju/mkfmi/main.nf b/modules/nf-core/kaiju/mkfmi/main.nf index d08be63bb5e..f82c2d75921 100644 --- a/modules/nf-core/kaiju/mkfmi/main.nf +++ b/modules/nf-core/kaiju/mkfmi/main.nf @@ -1,18 +1,21 @@ process KAIJU_MKFMI { - tag "$meta.id" + tag "${meta.id}" label 'process_high' conda "bioconda::kaiju=1.10.0" - container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/kaiju:1.10.0--h43eeafb_0': - 'biocontainers/kaiju:1.10.0--h43eeafb_0' }" + container "${workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container + ? 'https://depot.galaxyproject.org/singularity/kaiju:1.10.0--h43eeafb_0' + : 'biocontainers/kaiju:1.10.0--h43eeafb_0'}" input: tuple val(meta), path(fasta) + val keep_intermediate output: tuple val(meta), path("*.fmi"), emit: fmi - path "versions.yml" , emit: versions + tuple val(meta), path("*.bwt"), optional: true, emit: bwt + tuple val(meta), path("*.sa"), optional: true, emit: sa + path "versions.yml", emit: versions when: task.ext.when == null || task.ext.when @@ -20,14 +23,17 @@ process KAIJU_MKFMI { script: def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" + def run_cleanup = keep_intermediate ? "" : "rm -f *.{bwt,sa}" """ kaiju-mkbwt \\ - $args \\ - -n $task.cpus \\ + ${args} \\ + -n ${task.cpus} \\ -o ${prefix} \\ ${fasta} kaiju-mkfmi ${prefix} + ${run_cleanup} + cat <<-END_VERSIONS > versions.yml "${task.process}": kaiju: \$(echo \$( kaiju -h 2>&1 | sed -n 1p | sed 's/^.*Kaiju //' )) @@ -37,8 +43,13 @@ process KAIJU_MKFMI { stub: def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" + def run_cleanup = keep_intermediate ? "" : "rm -f *.{bwt,sa}" """ touch ${prefix}.fmi + touch ${prefix}.bwt + touch ${prefix}.sa + + ${run_cleanup} cat <<-END_VERSIONS > versions.yml "${task.process}": diff --git a/modules/nf-core/kaiju/mkfmi/meta.yml b/modules/nf-core/kaiju/mkfmi/meta.yml index 16532703735..cb3a5a0aeed 100644 --- a/modules/nf-core/kaiju/mkfmi/meta.yml +++ b/modules/nf-core/kaiju/mkfmi/meta.yml @@ -26,6 +26,10 @@ input: type: file description: Uncompressed Protein FASTA file (mandatory) pattern: "*.{fa,faa,fasta}" + - - keep_intermediate: + type: boolean + description: "Keep intermediate files" + pattern: true|false output: - fmi: - meta: @@ -37,6 +41,26 @@ output: type: file description: Kaiju FM-index file pattern: "*.{fmi}" + - bwt: + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. `[ id:'test', single_end:false ]` + - "*.bwt": + type: file + description: Kaiju intermedite bwt-index file (not needed for classification) + pattern: "*.{bwt}" + - sa: + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. `[ id:'test', single_end:false ]` + - "*.sa": + type: file + description: Kaiju intermedite bwt-index file (not needed for classification) + pattern: "*.{sa}" - versions: - versions.yml: type: file @@ -44,3 +68,4 @@ output: pattern: "versions.yml" authors: - "@alxndrdiaz" + - "@jfy133" diff --git a/modules/nf-core/kaiju/mkfmi/tests/main.nf.test b/modules/nf-core/kaiju/mkfmi/tests/main.nf.test index d8062b0b9f9..68170caeb40 100644 --- a/modules/nf-core/kaiju/mkfmi/tests/main.nf.test +++ b/modules/nf-core/kaiju/mkfmi/tests/main.nf.test @@ -18,6 +18,30 @@ nextflow_process { [ id:'test', single_end:true ], file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/proteome.fasta', checkIfExists: true) ] + input[1] = false + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + + test("sarscov2 - proteome - keep intermediates") { + + when { + process { + """ + input[0] = [ + [ id:'test', single_end:true ], + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/proteome.fasta', checkIfExists: true) + ] + input[1] = true """ } } @@ -42,6 +66,7 @@ nextflow_process { [ id:'test', single_end:true ], file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/proteome.fasta', checkIfExists: true) ] + input[1] = true """ } } diff --git a/modules/nf-core/kaiju/mkfmi/tests/main.nf.test.snap b/modules/nf-core/kaiju/mkfmi/tests/main.nf.test.snap index 9120a164e4f..8c0ae1b22f1 100644 --- a/modules/nf-core/kaiju/mkfmi/tests/main.nf.test.snap +++ b/modules/nf-core/kaiju/mkfmi/tests/main.nf.test.snap @@ -3,6 +3,10 @@ "content": [ "test.fmi" ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.10.2" + }, "timestamp": "2024-01-20T16:27:00.670884904" }, "sarscov2 - proteome - fasta": { @@ -18,7 +22,16 @@ ] ], "1": [ + + ], + "2": [ + + ], + "3": [ "versions.yml:md5,3cbd427d0187ffee188347830d33dc12" + ], + "bwt": [ + ], "fmi": [ [ @@ -29,11 +42,89 @@ "test.fmi:md5,54fd89f5e4eab61af30175e8aa389598" ] ], + "sa": [ + + ], + "versions": [ + "versions.yml:md5,3cbd427d0187ffee188347830d33dc12" + ] + } + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.10.2" + }, + "timestamp": "2025-01-16T09:29:43.118144301" + }, + "sarscov2 - proteome - keep intermediates": { + "content": [ + { + "0": [ + [ + { + "id": "test", + "single_end": true + }, + "test.fmi:md5,54fd89f5e4eab61af30175e8aa389598" + ] + ], + "1": [ + [ + { + "id": "test", + "single_end": true + }, + "test.bwt:md5,fe639339371f5b4352017522f54d0c99" + ] + ], + "2": [ + [ + { + "id": "test", + "single_end": true + }, + "test.sa:md5,7d4a6481ad5ffdc2058bb35331a64d4d" + ] + ], + "3": [ + "versions.yml:md5,3cbd427d0187ffee188347830d33dc12" + ], + "bwt": [ + [ + { + "id": "test", + "single_end": true + }, + "test.bwt:md5,fe639339371f5b4352017522f54d0c99" + ] + ], + "fmi": [ + [ + { + "id": "test", + "single_end": true + }, + "test.fmi:md5,54fd89f5e4eab61af30175e8aa389598" + ] + ], + "sa": [ + [ + { + "id": "test", + "single_end": true + }, + "test.sa:md5,7d4a6481ad5ffdc2058bb35331a64d4d" + ] + ], "versions": [ "versions.yml:md5,3cbd427d0187ffee188347830d33dc12" ] } ], - "timestamp": "2024-01-20T16:26:48.062489887" + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.10.2" + }, + "timestamp": "2025-01-16T09:29:47.890853152" } } \ No newline at end of file diff --git a/modules/nf-core/krakenuniq/build/main.nf b/modules/nf-core/krakenuniq/build/main.nf index b9a5991a8b2..07c06bebfbe 100644 --- a/modules/nf-core/krakenuniq/build/main.nf +++ b/modules/nf-core/krakenuniq/build/main.nf @@ -1,18 +1,19 @@ process KRAKENUNIQ_BUILD { - tag "$meta.id" + tag "${meta.id}" label 'process_medium' conda "${moduleDir}/environment.yml" - container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/krakenuniq:1.0.4--pl5321h6dccd9a_2': - 'biocontainers/krakenuniq:1.0.4--pl5321h6dccd9a_2' }" + container "${workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container + ? 'https://depot.galaxyproject.org/singularity/krakenuniq:1.0.4--pl5321h6dccd9a_2' + : 'biocontainers/krakenuniq:1.0.4--pl5321h6dccd9a_2'}" input: tuple val(meta), path(custom_library_dir, stageAs: "library/*"), path(custom_taxonomy_dir, stageAs: "taxonomy"), path(custom_seqid2taxid) + val keep_intermediate output: - tuple val(meta), path("$prefix/"), emit: db - path "versions.yml" , emit: versions + tuple val(meta), path("${prefix}/"), emit: db + path "versions.yml", emit: versions when: task.ext.when == null || task.ext.when @@ -20,15 +21,38 @@ process KRAKENUNIQ_BUILD { script: def args = task.ext.args ?: '' prefix = task.ext.prefix ?: "${meta.id}" - custom_db = custom_library_dir ? "mkdir $prefix && mv library taxonomy $custom_seqid2taxid $prefix" : "" + custom_db = custom_library_dir ? "mkdir ${prefix} && mv library taxonomy ${custom_seqid2taxid} ${prefix}" : "" + run_cleanup = keep_intermediate ? "" : "find -L ${prefix} -type f -not -name \"*.kdb\" -type f -not -name \"*idx\" -not -name \"taxDB\" -delete" + """ - $custom_db + ${custom_db} krakenuniq-build \\ - $args \\ + ${args} \\ --threads ${task.cpus} \\ --db ${prefix} + ${run_cleanup} + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + krakenuniq: \$(echo \$(krakenuniq --version 2>&1) | sed 's/^.*KrakenUniq version //; s/ .*\$//') + END_VERSIONS + """ + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + run_cleanup = keep_intermediate ? "" : "find -L ${prefix} -type f -not -name \"*.kdb\" -type f -not -name \"*idx\" -not -name \"taxDB\" -delete" + """ + mkdir ${prefix}/ + touch ${prefix}/database-build.log + touch ${prefix}/database.idx + touch ${prefix}/database.jdb + touch ${prefix}/database.kdb + touch ${prefix}/database.kdb.counts + touch ${prefix}/database.kraken.tsv + touch ${prefix}/database.report.tsv + cat <<-END_VERSIONS > versions.yml "${task.process}": krakenuniq: \$(echo \$(krakenuniq --version 2>&1) | sed 's/^.*KrakenUniq version //; s/ .*\$//') diff --git a/modules/nf-core/krakenuniq/build/meta.yml b/modules/nf-core/krakenuniq/build/meta.yml index bafc3cfa04e..0322cb68ec1 100644 --- a/modules/nf-core/krakenuniq/build/meta.yml +++ b/modules/nf-core/krakenuniq/build/meta.yml @@ -34,6 +34,11 @@ input: - custom_seqid2taxid: type: file description: custom seqid2taxid + - - keep_intermediate: + type: boolean + description: "Keep intermediate files" + pattern: true|false + output: - db: - meta: @@ -41,7 +46,7 @@ output: description: | Groovy Map containing sample information e.g. [ id:'test', single_end:false ] - - $prefix/: + - ${prefix}/: type: directory description: Directory containing KrakenUniq database pattern: "*/" diff --git a/modules/nf-core/krakenuniq/build/tests/main.nf.test b/modules/nf-core/krakenuniq/build/tests/main.nf.test new file mode 100644 index 00000000000..c4e77e29846 --- /dev/null +++ b/modules/nf-core/krakenuniq/build/tests/main.nf.test @@ -0,0 +1,126 @@ +nextflow_process { + + name "Test Process KRAKENUNIQ_BUILD" + script "../main.nf" + process "KRAKENUNIQ_BUILD" + config './nextflow.config' + + tag "modules" + tag "modules_nfcore" + tag "krakenuniq" + tag "krakenuniq/build" + tag "krakenuniq/download" + + setup { + run("KRAKENUNIQ_DOWNLOAD"){ + script "../../download/main.nf" + process { + """ + input[0] = 'taxonomy' + """ + } + } + } + + test("sarscov2 - fasta") { + + when { + process { + """ + ch_fastas = Channel.fromPath(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) + ch_seqid2mapid = Channel.fromPath(params.modules_testdata_base_path + 'genomics/sarscov2/metagenome/seqid2taxid.map', checkIfExists: true) + + ch_input = ch_fastas + .combine(KRAKENUNIQ_DOWNLOAD.out.output) + .combine(ch_seqid2mapid) + .map { + fna, tax, map -> + + [ [id:'test'] , fna, tax, map ] + } + + input[0] = ch_input + input[1] = false + """ + } + } + + then { + def stablefiles = [] + file(process.out.db.get(0).get(1)).eachFileRecurse{ file -> if (!file.isDirectory() && !["database-build.log", "database.report.tsv", "timestamp", "taxdump.tar.gz", "names.dmp", "nodes.dmp"].find {file.toString().endsWith(it)}) {stablefiles.add(file)} } + def unstablefiles = [] + file(process.out.db.get(0).get(1)).eachFileRecurse{ file -> if (["database-build.log", "database.report.tsv", "timestamp", "taxdump.tar.gz", "names.dmp", "nodes.dmp"].find {file.toString().endsWith(it)}) {unstablefiles.add(file.getName().toString())} } + assertAll( + { assert process.success }, + { assert snapshot( + stablefiles.sort(), + unstablefiles.sort(), + process.out.versions + ).match() + } + ) + } + + } + +test("sarscov2 - fasta - nocleanup") { + + when { + process { + """ + ch_fastas = Channel.fromPath(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) + ch_seqid2mapid = Channel.fromPath(params.modules_testdata_base_path + 'genomics/sarscov2/metagenome/seqid2taxid.map', checkIfExists: true) + + ch_input = ch_fastas + .combine(KRAKENUNIQ_DOWNLOAD.out.output) + .combine(ch_seqid2mapid) + .map { + fna, tax, map -> + + [ [id:'test'] , fna, tax, map ] + } + + input[0] = ch_input + input[1] = true + """ + } + } + + then { + def stablefiles = [] + file(process.out.db.get(0).get(1)).eachFileRecurse{ file -> if (!file.isDirectory() && !["database-build.log", "database.report.tsv", "timestamp", "taxdump.tar.gz", "names.dmp", "nodes.dmp"].find {file.toString().endsWith(it)}) {stablefiles.add(file)} } + def unstablefiles = [] + file(process.out.db.get(0).get(1)).eachFileRecurse{ file -> if (["database-build.log", "database.report.tsv", "timestamp", "taxdump.tar.gz", "names.dmp", "nodes.dmp"].find {file.toString().endsWith(it)}) {unstablefiles.add(file.getName().toString())} } + assertAll( + { assert process.success }, + { assert snapshot( + stablefiles.sort(), + unstablefiles.sort(), + process.out.versions + ).match() + } + ) + } + + } + + test("sarscov2 - fasta - stub") { + options "-stub" + + when { + process { + """ + input[0] = [[id:'test'], [] , [] , []] + input[1] = false + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/nf-core/krakenuniq/build/tests/main.nf.test.snap b/modules/nf-core/krakenuniq/build/tests/main.nf.test.snap new file mode 100644 index 00000000000..fb3f1327e16 --- /dev/null +++ b/modules/nf-core/krakenuniq/build/tests/main.nf.test.snap @@ -0,0 +1,104 @@ +{ + "sarscov2 - fasta - stub": { + "content": [ + { + "0": [ + [ + { + "id": "test" + }, + [ + "database-build.log:md5,d41d8cd98f00b204e9800998ecf8427e", + "database.idx:md5,d41d8cd98f00b204e9800998ecf8427e", + "database.jdb:md5,d41d8cd98f00b204e9800998ecf8427e", + "database.kdb:md5,d41d8cd98f00b204e9800998ecf8427e", + "database.kdb.counts:md5,d41d8cd98f00b204e9800998ecf8427e", + "database.kraken.tsv:md5,d41d8cd98f00b204e9800998ecf8427e", + "database.report.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ] + ], + "1": [ + "versions.yml:md5,b7fb6c70957b2e6b6b810757928d0325" + ], + "db": [ + [ + { + "id": "test" + }, + [ + "database-build.log:md5,d41d8cd98f00b204e9800998ecf8427e", + "database.idx:md5,d41d8cd98f00b204e9800998ecf8427e", + "database.jdb:md5,d41d8cd98f00b204e9800998ecf8427e", + "database.kdb:md5,d41d8cd98f00b204e9800998ecf8427e", + "database.kdb.counts:md5,d41d8cd98f00b204e9800998ecf8427e", + "database.kraken.tsv:md5,d41d8cd98f00b204e9800998ecf8427e", + "database.report.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ] + ], + "versions": [ + "versions.yml:md5,b7fb6c70957b2e6b6b810757928d0325" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-16T14:19:28.193479362" + }, + "sarscov2 - fasta - nocleanup": { + "content": [ + [ + "database.idx:md5,f5298aa4215c956d2f737b5988721a24", + "database.jdb:md5,48db5f6bb9b9e9db7f5bbdd0d8bec4a8", + "database.kdb:md5,46542be19979e867075f9e455a314e00", + "database.kdb.counts:md5,a82149480a435210ec1e870f06b6cdb3", + "database.kraken.tsv:md5,be9bd0cb3a8bea30989e65aa42a73727", + "database0.kdb:md5,46542be19979e867075f9e455a314e00", + "library-files.txt:md5,8a9817d2de8465eb436aa3aa8696a717", + "genome.fasta:md5,6e9fe4042a72f2345f644f239272b7e6", + "seqid2taxid.map:md5,fe738f2333d57dde0db32239c04a93b8", + "taxDB:md5,37ea954363803b13c2c9f6ae36fc81c7" + ], + [ + "database-build.log", + "database.report.tsv", + "names.dmp", + "nodes.dmp", + "taxdump.tar.gz", + "timestamp" + ], + [ + "versions.yml:md5,b7fb6c70957b2e6b6b810757928d0325" + ] + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.10.2" + }, + "timestamp": "2025-01-17T08:29:04.791324194" + }, + "sarscov2 - fasta": { + "content": [ + [ + "database.idx:md5,f5298aa4215c956d2f737b5988721a24", + "database.kdb:md5,46542be19979e867075f9e455a314e00", + "database0.kdb:md5,46542be19979e867075f9e455a314e00", + "taxDB:md5,37ea954363803b13c2c9f6ae36fc81c7" + ], + [ + + ], + [ + "versions.yml:md5,b7fb6c70957b2e6b6b810757928d0325" + ] + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.10.2" + }, + "timestamp": "2025-01-17T08:28:18.051752599" + } +} \ No newline at end of file diff --git a/modules/nf-core/krakenuniq/build/tests/nextflow.config b/modules/nf-core/krakenuniq/build/tests/nextflow.config new file mode 100644 index 00000000000..11e267e03c6 --- /dev/null +++ b/modules/nf-core/krakenuniq/build/tests/nextflow.config @@ -0,0 +1,5 @@ +process { + withName: KRAKENUNIQ_BUILD { + ext.args = "--work-on-disk --max-db-size 12 --kmer-len 15 --minimizer-len 13 --jellyfish-bin \"\$(which jellyfish)\"" + } +} diff --git a/modules/nf-core/krakenuniq/download/main.nf b/modules/nf-core/krakenuniq/download/main.nf index 8ef3eff2b90..abfa89961f4 100644 --- a/modules/nf-core/krakenuniq/download/main.nf +++ b/modules/nf-core/krakenuniq/download/main.nf @@ -2,16 +2,16 @@ process KRAKENUNIQ_DOWNLOAD { label 'process_low' conda "${moduleDir}/environment.yml" - container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/krakenuniq:1.0.4--pl5321h6dccd9a_2': - 'biocontainers/krakenuniq:1.0.4--pl5321h6dccd9a_2' }" + container "${workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container + ? 'https://depot.galaxyproject.org/singularity/krakenuniq:1.0.4--pl5321h6dccd9a_2' + : 'biocontainers/krakenuniq:1.0.4--pl5321h6dccd9a_2'}" input: val pattern output: - path "${pattern}/" , emit: output - path "versions.yml" , emit: versions + path "${pattern}/", emit: output + path "versions.yml", emit: versions when: task.ext.when == null || task.ext.when @@ -23,7 +23,18 @@ process KRAKENUNIQ_DOWNLOAD { --threads ${task.cpus} \\ -o ${pattern}/ \\ ${pattern} \\ - $args + ${args} + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + krakenuniq: \$(echo \$(krakenuniq --version 2>&1) | sed 's/^.*KrakenUniq version //; s/ .*\$//') + END_VERSIONS + """ + + stub: + def args = task.ext.args ?: '' + """ + mkdir ${pattern} cat <<-END_VERSIONS > versions.yml "${task.process}": diff --git a/modules/nf-core/krakenuniq/download/tests/main.nf.test b/modules/nf-core/krakenuniq/download/tests/main.nf.test new file mode 100644 index 00000000000..61f018208db --- /dev/null +++ b/modules/nf-core/krakenuniq/download/tests/main.nf.test @@ -0,0 +1,63 @@ +nextflow_process { + + name "Test Process KRAKENUNIQ_DOWNLOAD" + script "../main.nf" + process "KRAKENUNIQ_DOWNLOAD" + + tag "modules" + tag "modules_nfcore" + tag "krakenuniq" + tag "krakenuniq/download" + + test("taxonomy") { + + when { + process { + """ + input[0] = 'taxonomy' + """ + } + } + + then { + def stablefiles = [] + file(process.out.output.get(0)).eachFileRecurse{ file -> if (!file.isDirectory() && !["timestamp", "taxdump.tar.gz"].find {file.toString().endsWith(it)}) {stablefiles.add(file)} } + println(stablefiles) + def unstablefiles = [] + file(process.out.output.get(0)).eachFileRecurse{ file -> if (["timestamp", "taxdump.tar.gz"].find {file.toString().endsWith(it)}) {unstablefiles.add(file.getName().toString())} } + println(unstablefiles) + assertAll( + { assert process.success }, + { assert snapshot( + stablefiles.sort(), + unstablefiles.sort(), + process.out.versions + ).match() + } + ) + } + + } + + test("taxonomy - stub") { + + options "-stub" + + when { + process { + """ + input[0] = 'taxonomy' + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + +} diff --git a/modules/nf-core/krakenuniq/download/tests/main.nf.test.snap b/modules/nf-core/krakenuniq/download/tests/main.nf.test.snap new file mode 100644 index 00000000000..fbfa2708162 --- /dev/null +++ b/modules/nf-core/krakenuniq/download/tests/main.nf.test.snap @@ -0,0 +1,49 @@ +{ + "taxonomy - stub": { + "content": [ + { + "0": [ + [ + + ] + ], + "1": [ + "versions.yml:md5,a12e821f0d977f77c0c905a89c708d09" + ], + "output": [ + [ + + ] + ], + "versions": [ + "versions.yml:md5,a12e821f0d977f77c0c905a89c708d09" + ] + } + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.10.2" + }, + "timestamp": "2025-01-17T08:39:20.362801897" + }, + "taxonomy": { + "content": [ + [ + "names.dmp:md5,aae05a99d67ea8a593f8642b40e98f28", + "nodes.dmp:md5,73f515a0c4be7a324a6717bbe14cd274" + ], + [ + "taxdump.tar.gz", + "timestamp" + ], + [ + "versions.yml:md5,a12e821f0d977f77c0c905a89c708d09" + ] + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.10.2" + }, + "timestamp": "2025-01-17T10:35:20.487227167" + } +} \ No newline at end of file diff --git a/modules/nf-core/mmseqs/cluster/main.nf b/modules/nf-core/mmseqs/cluster/main.nf index bad704cbbe2..b7fa6c4d2cf 100644 --- a/modules/nf-core/mmseqs/cluster/main.nf +++ b/modules/nf-core/mmseqs/cluster/main.nf @@ -34,8 +34,7 @@ process MMSEQS_CLUSTER { ${prefix}/${prefix} \\ tmp1 \\ $args \\ - --threads ${task.cpus} \\ - --compressed 1 + --threads ${task.cpus} cat <<-END_VERSIONS > versions.yml "${task.process}": diff --git a/modules/nf-core/mmseqs/cluster/tests/main.nf.test.snap b/modules/nf-core/mmseqs/cluster/tests/main.nf.test.snap index 6fc98698513..f61bc9f3070 100644 --- a/modules/nf-core/mmseqs/cluster/tests/main.nf.test.snap +++ b/modules/nf-core/mmseqs/cluster/tests/main.nf.test.snap @@ -8,8 +8,8 @@ "test_output_cluster.index" ], [ - "test_output_cluster.dbtype:md5,5c879eb8a8613fd4537b919e7d68d089", - "test_output_cluster.index:md5,ca7e1f0967222b06d7e05e47bcbe1e50" + "test_output_cluster.dbtype:md5,b9d9c6dbc098c97ae446f612efd8eafd", + "test_output_cluster.index:md5,9848b52b6df827d80a04f7c71c50056b" ], "versions.yml:md5,4acad55952c6d1fb41ad7f5a44468aed" ], @@ -17,6 +17,6 @@ "nf-test": "0.9.2", "nextflow": "24.10.2" }, - "timestamp": "2024-12-05T10:44:45.713270981" + "timestamp": "2024-12-15T19:30:14.704271821" } } \ No newline at end of file diff --git a/modules/nf-core/mmseqs/createdb/main.nf b/modules/nf-core/mmseqs/createdb/main.nf index b1d6caf0b06..ef11306895b 100644 --- a/modules/nf-core/mmseqs/createdb/main.nf +++ b/modules/nf-core/mmseqs/createdb/main.nf @@ -33,8 +33,7 @@ process MMSEQS_CREATEDB { createdb \\ ${sequence_name} \\ ${prefix}/${prefix} \\ - $args \\ - --compressed 1 + $args cat <<-END_VERSIONS > versions.yml "${task.process}": diff --git a/modules/nf-core/mmseqs/createdb/tests/main.nf.test.snap b/modules/nf-core/mmseqs/createdb/tests/main.nf.test.snap index 92f1e6d8257..ececa7a4dd5 100644 --- a/modules/nf-core/mmseqs/createdb/tests/main.nf.test.snap +++ b/modules/nf-core/mmseqs/createdb/tests/main.nf.test.snap @@ -8,14 +8,14 @@ "single_end": false }, [ - "test:md5,7c3c2c5926cf8fa82e66b9628f680256", - "test.dbtype:md5,c8ed20c23ba91f4577f84c940c86c7db", - "test.index:md5,5b2fd8abd0ad3fee24738af7082e6a6e", + "test:md5,a2cda8768736a7a317a09d61556194bd", + "test.dbtype:md5,4352d88a78aa39750bf70cd6f27bcaa5", + "test.index:md5,4ba298b011e2472ce9f6b99fe6b6e3d5", "test.lookup:md5,32f88756dbcb6aaf7b239b0d61730f1b", "test.source:md5,9ada5b3ea6e1a7e16c4418eb98ae8d9d", - "test_h:md5,8c29f5ed94d83d7115e9c8a883ce358d", - "test_h.dbtype:md5,8895d3d8e9322aedbf45249dfb3ddb0a", - "test_h.index:md5,87c7c8c6d16018ebfaa6f408391a5ae2" + "test_h:md5,21c399702a071bdeecce09f9d1df4531", + "test_h.dbtype:md5,740bab4f9ec8808aedb68d6b1281aeb2", + "test_h.index:md5,d767fb43b37c0a644c676b00f9f93477" ] ] ], @@ -27,7 +27,7 @@ "nf-test": "0.9.2", "nextflow": "24.10.2" }, - "timestamp": "2024-12-05T10:35:27.322864475" + "timestamp": "2024-12-15T19:30:25.339409238" }, "Should build an mmseqs db from a zipped amino acid sequence file": { "content": [ @@ -37,14 +37,14 @@ "id": "test" }, [ - "test:md5,4b494965ed7ab67da8ca3f39523eb104", - "test.dbtype:md5,152afd7bf4dbe26f85032eee0269201a", - "test.index:md5,46f9d884e9a7f442fe1cd2ce339734e3", + "test:md5,1162504bc65aacf734abdcb0cdbe87de", + "test.dbtype:md5,f1d3ff8443297732862df21dc4e57262", + "test.index:md5,8cdcbc06c2b99fdb09f3d1735a76def9", "test.lookup:md5,3e27cb93d9ee875ad42a6f32f5651bdc", "test.source:md5,eaa64fc8a5f7ec1ee49b0dcbd1a72e9d", - "test_h:md5,6e798b81c70d191f78939c2dd6223a7f", - "test_h.dbtype:md5,8895d3d8e9322aedbf45249dfb3ddb0a", - "test_h.index:md5,d5ac49ff56df064b980fa0eb5da57673" + "test_h:md5,f258f8cc04f83c270a75e8b00a6d2d89", + "test_h.dbtype:md5,740bab4f9ec8808aedb68d6b1281aeb2", + "test_h.index:md5,844bf1950bcd37284fdc5d7117ee4241" ] ] ], @@ -56,6 +56,6 @@ "nf-test": "0.9.2", "nextflow": "24.10.2" }, - "timestamp": "2024-12-05T10:35:33.418552595" + "timestamp": "2024-12-15T19:30:34.93361715" } } \ No newline at end of file diff --git a/modules/nf-core/mmseqs/createindex/environment.yml b/modules/nf-core/mmseqs/createindex/environment.yml index 18547591a2e..235ad03ad82 100644 --- a/modules/nf-core/mmseqs/createindex/environment.yml +++ b/modules/nf-core/mmseqs/createindex/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::mmseqs2=15.6f452 + - bioconda::mmseqs2=16.747c6 diff --git a/modules/nf-core/mmseqs/createindex/main.nf b/modules/nf-core/mmseqs/createindex/main.nf index 4e9c82a3499..facc9a673f2 100644 --- a/modules/nf-core/mmseqs/createindex/main.nf +++ b/modules/nf-core/mmseqs/createindex/main.nf @@ -3,16 +3,16 @@ process MMSEQS_CREATEINDEX { label 'process_high' conda "${moduleDir}/environment.yml" - container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/mmseqs2:15.6f452--pl5321h6a68c12_0': - 'biocontainers/mmseqs2:15.6f452--pl5321h6a68c12_0' }" + container "${workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container + ? 'https://depot.galaxyproject.org/singularity/mmseqs2:16.747c6--pl5321h6a68c12_0' + : 'biocontainers/mmseqs2:16.747c6--pl5321h6a68c12_0'}" input: tuple val(meta), path(db) output: - tuple val(meta), path(db) , emit: db_indexed - path "versions.yml" , emit: versions + tuple val(meta), path(db), emit: db_indexed + path "versions.yml", emit: versions when: task.ext.when == null || task.ext.when @@ -23,15 +23,14 @@ process MMSEQS_CREATEINDEX { def prefix = task.ext.prefix ?: "${meta.id}" """ - DB_INPUT_PATH_NAME=\$(find -L "$db/" -maxdepth 1 -name "$args2" | sed 's/\\.[^.]*\$//' | sed -e 'N;s/^\\(.*\\).*\\n\\1.*\$/\\1\\n\\1/;D' ) + DB_INPUT_PATH_NAME=\$(find -L "${db}/" -maxdepth 1 -name "${args2}" | sed 's/\\.[^.]*\$//' | sed -e 'N;s/^\\(.*\\).*\\n\\1.*\$/\\1\\n\\1/;D' ) mmseqs \\ createindex \\ \${DB_INPUT_PATH_NAME} \\ tmp1 \\ - $args \\ - --threads ${task.cpus} \\ - --compressed 1 + ${args} \\ + --threads ${task.cpus} cat <<-END_VERSIONS > versions.yml "${task.process}": @@ -40,8 +39,9 @@ process MMSEQS_CREATEINDEX { """ stub: + def args2 = task.ext.args2 ?: "*.dbtype" """ - DB_INPUT_PATH_NAME=\$(find -L "$db/" -maxdepth 1 -name "$args2" | sed 's/\\.[^.]*\$//' | sed -e 'N;s/^\\(.*\\).*\\n\\1.*\$/\\1\\n\\1/;D' ) + DB_INPUT_PATH_NAME=\$(find -L "${db}/" -maxdepth 1 -name "${args2}" | sed 's/\\.[^.]*\$//' | sed -e 'N;s/^\\(.*\\).*\\n\\1.*\$/\\1\\n\\1/;D' ) touch "\${DB_PATH_NAME}.idx" diff --git a/modules/nf-core/mmseqs/createindex/tests/main.nf.test.snap b/modules/nf-core/mmseqs/createindex/tests/main.nf.test.snap index cd59a2fea63..2df31248b79 100644 --- a/modules/nf-core/mmseqs/createindex/tests/main.nf.test.snap +++ b/modules/nf-core/mmseqs/createindex/tests/main.nf.test.snap @@ -2,14 +2,14 @@ "versions": { "content": [ [ - "versions.yml:md5,63073370e7d20afd4773f5e6e7581582" + "versions.yml:md5,227ad351b62984329aabf90242522eee" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.2" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-07-09T10:43:46.152721" + "timestamp": "2025-01-16T13:17:27.724764877" }, "createindex_filtered_files": { "content": [ diff --git a/modules/nf-core/mmseqs/createtsv/main.nf b/modules/nf-core/mmseqs/createtsv/main.nf index d5afc0694ae..b41b5c54a65 100644 --- a/modules/nf-core/mmseqs/createtsv/main.nf +++ b/modules/nf-core/mmseqs/createtsv/main.nf @@ -22,9 +22,9 @@ process MMSEQS_CREATETSV { script: def args = task.ext.args ?: '' - def args2 = task.ext.args ?: "*.dbtype" // database generated by mmyseqs cluster | search | taxonomy | ... - def args3 = task.ext.args ?: "*.dbtype" // database generated by mmyseqs/createdb - def args4 = task.ext.args ?: "*.dbtype" // database generated by mmyseqs/createdb + def args2 = task.ext.args2 ?: "*.dbtype" // database generated by mmyseqs cluster | search | taxonomy | ... + def args3 = task.ext.args3 ?: "*.dbtype" // database generated by mmyseqs/createdb + def args4 = task.ext.args4 ?: "*.dbtype" // database generated by mmyseqs/createdb def prefix = task.ext.prefix ?: "${meta.id}" """ @@ -40,8 +40,7 @@ process MMSEQS_CREATETSV { \$DB_RESULT_PATH_NAME \\ ${prefix}.tsv \\ $args \\ - --threads ${task.cpus} \\ - --compressed 1 + --threads ${task.cpus} cat <<-END_VERSIONS > versions.yml "${task.process}": diff --git a/modules/nf-core/mmseqs/createtsv/tests/main.nf.test.snap b/modules/nf-core/mmseqs/createtsv/tests/main.nf.test.snap index 6192fa16a83..8279c81e6dd 100644 --- a/modules/nf-core/mmseqs/createtsv/tests/main.nf.test.snap +++ b/modules/nf-core/mmseqs/createtsv/tests/main.nf.test.snap @@ -73,36 +73,24 @@ "content": [ { "0": [ - [ - { - "id": "test_query", - "single_end": false - }, - "test_query.tsv:md5,9179f5c85b8b87a4dc998c9d17840161" - ] + ], "1": [ - "versions.yml:md5,34bac3809a7eaf833a944be6888f83a7" + ], "tsv": [ - [ - { - "id": "test_query", - "single_end": false - }, - "test_query.tsv:md5,9179f5c85b8b87a4dc998c9d17840161" - ] + ], "versions": [ - "versions.yml:md5,34bac3809a7eaf833a944be6888f83a7" + ] } ], "meta": { "nf-test": "0.9.2", - "nextflow": "24.10.2" + "nextflow": "24.10.3" }, - "timestamp": "2024-12-05T11:25:54.741775111" + "timestamp": "2025-01-16T14:29:41.214561285" }, "mmseqs/createtsv - sarscov2 - cluster": { "content": [ @@ -113,7 +101,7 @@ "id": "test_result", "single_end": true }, - "test_result.tsv:md5,4e7ba50ce2879660dc6595286bf0d097" + "test_result.tsv:md5,c81449fb936b76aad6f925b965e84bc5" ] ], "1": [ @@ -125,7 +113,7 @@ "id": "test_result", "single_end": true }, - "test_result.tsv:md5,4e7ba50ce2879660dc6595286bf0d097" + "test_result.tsv:md5,c81449fb936b76aad6f925b965e84bc5" ] ], "versions": [ @@ -135,8 +123,8 @@ ], "meta": { "nf-test": "0.9.2", - "nextflow": "24.10.2" + "nextflow": "24.10.3" }, - "timestamp": "2024-12-05T10:50:42.432284995" + "timestamp": "2025-01-15T11:17:04.119521629" } } \ No newline at end of file diff --git a/modules/nf-core/mmseqs/databases/main.nf b/modules/nf-core/mmseqs/databases/main.nf index 176d7b45d59..8f94eac5ffa 100644 --- a/modules/nf-core/mmseqs/databases/main.nf +++ b/modules/nf-core/mmseqs/databases/main.nf @@ -28,7 +28,6 @@ process MMSEQS_DATABASES { ${prefix}/database \\ tmp/ \\ --threads ${task.cpus} \\ - --compressed 1 \\ ${args} cat <<-END_VERSIONS > versions.yml diff --git a/modules/nf-core/mmseqs/easysearch/environment.yml b/modules/nf-core/mmseqs/easysearch/environment.yml index 18547591a2e..235ad03ad82 100644 --- a/modules/nf-core/mmseqs/easysearch/environment.yml +++ b/modules/nf-core/mmseqs/easysearch/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::mmseqs2=15.6f452 + - bioconda::mmseqs2=16.747c6 diff --git a/modules/nf-core/mmseqs/easysearch/main.nf b/modules/nf-core/mmseqs/easysearch/main.nf index c934f186cbd..14e3c684c38 100644 --- a/modules/nf-core/mmseqs/easysearch/main.nf +++ b/modules/nf-core/mmseqs/easysearch/main.nf @@ -1,20 +1,19 @@ - process MMSEQS_EASYSEARCH { - tag "$meta.id" + tag "${meta.id}" label 'process_high' conda "${moduleDir}/environment.yml" - container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/mmseqs2:15.6f452--pl5321h6a68c12_0': - 'biocontainers/mmseqs2:15.6f452--pl5321h6a68c12_0' }" + container "${workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container + ? 'https://depot.galaxyproject.org/singularity/mmseqs2:16.747c6--pl5321h6a68c12_0' + : 'biocontainers/mmseqs2:16.747c6--pl5321h6a68c12_0'}" input: - tuple val(meta) , path(fasta) + tuple val(meta), path(fasta) tuple val(meta2), path(db_target) output: tuple val(meta), path("${prefix}.tsv"), emit: tsv - path "versions.yml" , emit: versions + path "versions.yml", emit: versions when: task.ext.when == null || task.ext.when @@ -27,17 +26,16 @@ process MMSEQS_EASYSEARCH { mkdir -p ${prefix} # Extract files with specified args based suffix | remove suffix | isolate longest common substring of files - DB_TARGET_PATH_NAME=\$(find -L "$db_target/" -maxdepth 1 -name "$args2" | sed 's/\\.[^.]*\$//' | sed -e 'N;s/^\\(.*\\).*\\n\\1.*\$/\\1\\n\\1/;D' ) + DB_TARGET_PATH_NAME=\$(find -L "${db_target}/" -maxdepth 1 -name "${args2}" | sed 's/\\.[^.]*\$//' | sed -e 'N;s/^\\(.*\\).*\\n\\1.*\$/\\1\\n\\1/;D' ) mmseqs \\ easy-search \\ - $fasta \\ + ${fasta} \\ \$DB_TARGET_PATH_NAME \\ ${prefix}.tsv \\ tmp1 \\ - $args \\ - --threads ${task.cpus} \\ - --compressed 1 + ${args} \\ + --threads ${task.cpus} cat <<-END_VERSIONS > versions.yml @@ -49,9 +47,9 @@ process MMSEQS_EASYSEARCH { stub: def args = task.ext.args ?: '' def args2 = task.ext.args2 ?: "*.dbtype" - def prefix = task.ext.prefix ?: "${meta.id}" + prefix = task.ext.prefix ?: "${meta.id}" """ - ${prefix}.tsv + touch ${prefix}.tsv cat <<-END_VERSIONS > versions.yml "${task.process}": diff --git a/modules/nf-core/mmseqs/easysearch/meta.yml b/modules/nf-core/mmseqs/easysearch/meta.yml index bcfdde9b783..972fbe3f1b9 100644 --- a/modules/nf-core/mmseqs/easysearch/meta.yml +++ b/modules/nf-core/mmseqs/easysearch/meta.yml @@ -1,4 +1,3 @@ -# yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/yaml-schema.json name: "mmseqs_easysearch" description: Searches for the sequences of a fasta file in a database using MMseqs2 keywords: diff --git a/modules/nf-core/mmseqs/easysearch/tests/main.nf.test b/modules/nf-core/mmseqs/easysearch/tests/main.nf.test new file mode 100644 index 00000000000..f9894feab3b --- /dev/null +++ b/modules/nf-core/mmseqs/easysearch/tests/main.nf.test @@ -0,0 +1,68 @@ +nextflow_process { + + name "Test Process MMSEQS_EASYSEARCH" + script "../main.nf" + process "MMSEQS_EASYSEARCH" + config './nextflow.config' + + tag "modules" + tag "modules_nfcore" + tag "mmseqs" + tag "mmseqs/easysearch" + tag "mmseqs/createdb" + + setup { + + run("MMSEQS_CREATEDB") { + script "../../createdb/main.nf" + process { + """ + input[0] = [ [id: 'test_query', single_end: true], file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/fasta/contigs.fasta', checkIfExists: true) ] + """ + } + } + } + + test("sarscov2 - illumina - contigs - fasta") { + + when { + process { + """ + input[0] = [ [id: 'test_scaffolds', single_end: true], file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/fasta/scaffolds.fasta', checkIfExists: true) ] + input[1] = MMSEQS_CREATEDB.out.db + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + + test("sarscov2 - illumina - contigs - fasta - stub") { + + options "-stub" + + when { + process { + """ + input[0] = [ [id: 'test_scaffolds', single_end: true], file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/fasta/scaffolds.fasta', checkIfExists: true) ] + input[1] = MMSEQS_CREATEDB.out.db + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + +} diff --git a/modules/nf-core/mmseqs/easysearch/tests/main.nf.test.snap b/modules/nf-core/mmseqs/easysearch/tests/main.nf.test.snap new file mode 100644 index 00000000000..9f789c7121e --- /dev/null +++ b/modules/nf-core/mmseqs/easysearch/tests/main.nf.test.snap @@ -0,0 +1,72 @@ +{ + "sarscov2 - illumina - contigs - fasta": { + "content": [ + { + "0": [ + [ + { + "id": "test_scaffolds", + "single_end": true + }, + "test_scaffolds.tsv:md5,98a6e138ad41ed04366808799fd6a4b8" + ] + ], + "1": [ + "versions.yml:md5,2486965fbe4dca06ebf5bc84782dec83" + ], + "tsv": [ + [ + { + "id": "test_scaffolds", + "single_end": true + }, + "test_scaffolds.tsv:md5,98a6e138ad41ed04366808799fd6a4b8" + ] + ], + "versions": [ + "versions.yml:md5,2486965fbe4dca06ebf5bc84782dec83" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-16T14:14:22.925002111" + }, + "sarscov2 - illumina - contigs - fasta - stub": { + "content": [ + { + "0": [ + [ + { + "id": "test_scaffolds", + "single_end": true + }, + "test_scaffolds.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,bef949a977594a12d605c2d30198ab27" + ], + "tsv": [ + [ + { + "id": "test_scaffolds", + "single_end": true + }, + "test_scaffolds.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,bef949a977594a12d605c2d30198ab27" + ] + } + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.10.2" + }, + "timestamp": "2025-01-15T10:09:30.132833597" + } +} \ No newline at end of file diff --git a/modules/nf-core/mmseqs/easysearch/tests/nextflow.config b/modules/nf-core/mmseqs/easysearch/tests/nextflow.config new file mode 100644 index 00000000000..9700c7e4930 --- /dev/null +++ b/modules/nf-core/mmseqs/easysearch/tests/nextflow.config @@ -0,0 +1,5 @@ +process { + withName: MMSEQS_EASYSEARCH { + ext.args = '--remove-tmp-files 1 --search-type 2' + } +} diff --git a/modules/nf-core/mmseqs/linclust/main.nf b/modules/nf-core/mmseqs/linclust/main.nf index c5927985897..fb8663b98f1 100644 --- a/modules/nf-core/mmseqs/linclust/main.nf +++ b/modules/nf-core/mmseqs/linclust/main.nf @@ -34,8 +34,7 @@ process MMSEQS_LINCLUST { ${prefix}/${prefix} \\ tmp1 \\ $args \\ - --threads ${task.cpus} \\ - --compressed 1 + --threads ${task.cpus} cat <<-END_VERSIONS > versions.yml "${task.process}": diff --git a/modules/nf-core/mmseqs/linclust/tests/main.nf.test.snap b/modules/nf-core/mmseqs/linclust/tests/main.nf.test.snap index e1622d49d12..b5f555b847a 100644 --- a/modules/nf-core/mmseqs/linclust/tests/main.nf.test.snap +++ b/modules/nf-core/mmseqs/linclust/tests/main.nf.test.snap @@ -8,8 +8,8 @@ "test_output_cluster.index" ], [ - "test_output_cluster.dbtype:md5,5c879eb8a8613fd4537b919e7d68d089", - "test_output_cluster.index:md5,38908275cdd5727ae0eb9be017f9ca13" + "test_output_cluster.dbtype:md5,b9d9c6dbc098c97ae446f612efd8eafd", + "test_output_cluster.index:md5,a0b78f31aee2c327d72f32919814baf1" ], "versions.yml:md5,969cb26241f66ac758c104f9561860b1" ], @@ -17,6 +17,6 @@ "nf-test": "0.9.2", "nextflow": "24.10.2" }, - "timestamp": "2024-12-05T10:43:26.020522437" + "timestamp": "2024-12-15T19:38:00.258247122" } } \ No newline at end of file diff --git a/modules/nf-core/mmseqs/search/environment.yml b/modules/nf-core/mmseqs/search/environment.yml index 18547591a2e..235ad03ad82 100644 --- a/modules/nf-core/mmseqs/search/environment.yml +++ b/modules/nf-core/mmseqs/search/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::mmseqs2=15.6f452 + - bioconda::mmseqs2=16.747c6 diff --git a/modules/nf-core/mmseqs/search/main.nf b/modules/nf-core/mmseqs/search/main.nf index ed37960f413..73cc8a7af68 100644 --- a/modules/nf-core/mmseqs/search/main.nf +++ b/modules/nf-core/mmseqs/search/main.nf @@ -1,19 +1,18 @@ - process MMSEQS_SEARCH { - tag "$meta.id" + tag "${meta.id}" label 'process_high' conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/mmseqs2:14.7e284--pl5321h6a68c12_2': - 'biocontainers/mmseqs2:14.7e284--pl5321h6a68c12_2' }" + 'https://depot.galaxyproject.org/singularity/mmseqs2:16.747c6--pl5321h6a68c12_0': + 'biocontainers/mmseqs2:16.747c6--pl5321h6a68c12_0' }" input: tuple val(meta), path(db_query) tuple val(meta2), path(db_target) output: - tuple val(meta), path("${prefix}"), emit: db_search + tuple val(meta), path("${prefix}/"), emit: db_search path "versions.yml" , emit: versions when: @@ -25,13 +24,15 @@ process MMSEQS_SEARCH { def args3 = task.ext.args3 ?: "*.dbtype" prefix = task.ext.prefix ?: "${meta.id}" - if ("$db_query" == "${prefix}" || "$db_target" == "${prefix}" ) error "Input and output names of databases are the same, set prefix in module configuration to disambiguate!" + if ("${db_query}" == "${prefix}" || "${db_target}" == "${prefix}") { + error("Input and output names of databases are the same, set prefix in module configuration to disambiguate!") + } """ mkdir -p ${prefix} # Extract files with specified args based suffix | remove suffix | isolate longest common substring of files - DB_QUERY_PATH_NAME=\$(find -L "$db_query/" -maxdepth 1 -name "$args2" | sed 's/\\.[^.]*\$//' | sed -e 'N;s/^\\(.*\\).*\\n\\1.*\$/\\1\\n\\1/;D' ) - DB_TARGET_PATH_NAME=\$(find -L "$db_target/" -maxdepth 1 -name "$args3" | sed 's/\\.[^.]*\$//' | sed -e 'N;s/^\\(.*\\).*\\n\\1.*\$/\\1\\n\\1/;D' ) + DB_QUERY_PATH_NAME=\$(find -L "${db_query}/" -maxdepth 1 -name "${args2}" | sed 's/\\.[^.]*\$//' | sed -e 'N;s/^\\(.*\\).*\\n\\1.*\$/\\1\\n\\1/;D' ) + DB_TARGET_PATH_NAME=\$(find -L "${db_target}/" -maxdepth 1 -name "${args3}" | sed 's/\\.[^.]*\$//' | sed -e 'N;s/^\\(.*\\).*\\n\\1.*\$/\\1\\n\\1/;D' ) mmseqs \\ search \\ @@ -40,9 +41,7 @@ process MMSEQS_SEARCH { ${prefix}/${prefix} \\ tmp1 \\ $args \\ - --threads ${task.cpus} \\ - --compressed 1 - + --threads ${task.cpus} cat <<-END_VERSIONS > versions.yml "${task.process}": @@ -52,17 +51,17 @@ process MMSEQS_SEARCH { stub: def args = task.ext.args ?: '' - def prefix = task.ext.prefix ?: "${meta.id}" + prefix = task.ext.prefix ?: "${meta.id}" if ("$db_query" == "${prefix}" || "$db_target" == "${prefix}" ) error "Input and output names of databases are the same, set prefix in module configuration to disambiguate!" """ - mkdir -p $prefix + mkdir -p ${prefix} touch ${prefix}/${prefix}.{0..9} touch ${prefix}/${prefix}.dbtype touch ${prefix}/${prefix}.index cat <<-END_VERSIONS > versions.yml "${task.process}": - mmseqs: \$(mmseqs | grep 'Version' | sed 's/MMseqs2 Version: /') + mmseqs: \$(mmseqs | grep 'Version' | sed 's/MMseqs2 Version: //') END_VERSIONS """ } diff --git a/modules/nf-core/mmseqs/search/meta.yml b/modules/nf-core/mmseqs/search/meta.yml index e722862ad75..8490c8baf5a 100644 --- a/modules/nf-core/mmseqs/search/meta.yml +++ b/modules/nf-core/mmseqs/search/meta.yml @@ -43,7 +43,7 @@ output: description: | Groovy Map containing sample information e.g. `[ id:'test', single_end:false ]` - - ${prefix}: + - ${prefix}/: type: directory description: an MMseqs2 database with search results - versions: diff --git a/modules/nf-core/mmseqs/search/tests/main.nf.test b/modules/nf-core/mmseqs/search/tests/main.nf.test new file mode 100644 index 00000000000..684ca1d11ff --- /dev/null +++ b/modules/nf-core/mmseqs/search/tests/main.nf.test @@ -0,0 +1,95 @@ +nextflow_process { + + name "Test Process MMSEQS_SEARCH" + script "../main.nf" + process "MMSEQS_SEARCH" + + tag "modules" + tag "modules_nfcore" + tag "mmseqs" + tag "mmseqs/search" + tag "mmseqs/createdb" + + config "./nextflow.config" + + setup { + run("MMSEQS_CREATEDB", alias: "MMSEQS_CREATEDB_QUERY") { + script "../../../mmseqs/createdb/main.nf" + process { + """ + input[0] = [ [ id:'test_query', single_end:true ], // meta map + file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/fasta/contigs.fasta', checkIfExists: true) + ] + """ + } + } + + run("MMSEQS_CREATEDB", alias: "MMSEQS_CREATEDB_TARGET") { + script "../../../mmseqs/createdb/main.nf" + process { + """ + input[0] = [ [ id:'test_target', single_end:true ], // meta map + file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/fasta/scaffolds.fasta', checkIfExists: true) + ] + """ + } + } + } + + test("sarscov2 - test-search") { + + when { + params { + module_args = '--remove-tmp-files 1 --search-type 2' + module_prefix = 'test_output_search' + } + process { + """ + input[0] = MMSEQS_CREATEDB_QUERY.out.db + input[1] = MMSEQS_CREATEDB_TARGET.out.db + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + file(process.out.db_search.get(0).get(1)).list().sort(), //second file is empty so fails linting + path(process.out.versions[0]).yaml + ).match() } + ) + } + + } + + test("sarscov2 - test-search - stub") { + + options "-stub" + + when { + params { + module_args = '--remove-tmp-files 1 --search-type 2' + module_prefix = 'test_output_search' + } + process { + """ + input[0] = MMSEQS_CREATEDB_QUERY.out.db + input[1] = MMSEQS_CREATEDB_TARGET.out.db + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out, + path(process.out.versions[0]).yaml + ).match() } + ) + } + + } + +} diff --git a/modules/nf-core/mmseqs/search/tests/main.nf.test.snap b/modules/nf-core/mmseqs/search/tests/main.nf.test.snap new file mode 100644 index 00000000000..746588b6ea5 --- /dev/null +++ b/modules/nf-core/mmseqs/search/tests/main.nf.test.snap @@ -0,0 +1,88 @@ +{ + "sarscov2 - test-search": { + "content": [ + [ + "test_output_search.0", + "test_output_search.1", + "test_output_search.dbtype", + "test_output_search.index" + ], + { + "MMSEQS_SEARCH": { + "mmseqs": "16.747c6" + } + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-16T14:16:15.879855065" + }, + "sarscov2 - test-search - stub": { + "content": [ + { + "0": [ + [ + { + "id": "test_query", + "single_end": true + }, + [ + "test_output_search.0:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.1:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.2:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.3:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.4:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.5:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.6:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.7:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.8:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.9:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.dbtype:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.index:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ] + ], + "1": [ + "versions.yml:md5,0c09b7c1276ab675bbf641afaeac482b" + ], + "db_search": [ + [ + { + "id": "test_query", + "single_end": true + }, + [ + "test_output_search.0:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.1:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.2:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.3:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.4:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.5:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.6:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.7:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.8:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.9:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.dbtype:md5,d41d8cd98f00b204e9800998ecf8427e", + "test_output_search.index:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ] + ], + "versions": [ + "versions.yml:md5,0c09b7c1276ab675bbf641afaeac482b" + ] + }, + { + "MMSEQS_SEARCH": { + "mmseqs": "16.747c6" + } + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-16T14:16:22.186243162" + } +} \ No newline at end of file diff --git a/modules/nf-core/mmseqs/search/tests/nextflow.config b/modules/nf-core/mmseqs/search/tests/nextflow.config new file mode 100644 index 00000000000..cbc671e0253 --- /dev/null +++ b/modules/nf-core/mmseqs/search/tests/nextflow.config @@ -0,0 +1,8 @@ +process { + + withName: MMSEQS_SEARCH { + ext.prefix = params.module_prefix + ext.args = params.module_args + } + +} diff --git a/modules/nf-core/mmseqs/taxonomy/environment.yml b/modules/nf-core/mmseqs/taxonomy/environment.yml index 65f1e5cde04..c5b78bc7d80 100644 --- a/modules/nf-core/mmseqs/taxonomy/environment.yml +++ b/modules/nf-core/mmseqs/taxonomy/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - "bioconda::mmseqs2=15.6f452" + - "bioconda::mmseqs2=16.747c6" diff --git a/modules/nf-core/mmseqs/taxonomy/main.nf b/modules/nf-core/mmseqs/taxonomy/main.nf index 54849885691..bb0caf23be6 100644 --- a/modules/nf-core/mmseqs/taxonomy/main.nf +++ b/modules/nf-core/mmseqs/taxonomy/main.nf @@ -4,8 +4,8 @@ process MMSEQS_TAXONOMY { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/mmseqs2:15.6f452--pl5321h6a68c12_0': - 'biocontainers/mmseqs2:15.6f452--pl5321h6a68c12_0' }" + 'https://depot.galaxyproject.org/singularity/mmseqs2:16.747c6--pl5321h6a68c12_0': + 'biocontainers/mmseqs2:16.747c6--pl5321h6a68c12_0' }" input: tuple val(meta), path(db_query) @@ -38,8 +38,7 @@ process MMSEQS_TAXONOMY { ${prefix}_taxonomy/${prefix} \\ tmp1 \\ $args \\ - --threads ${task.cpus} \\ - --compressed 1 + --threads ${task.cpus} cat <<-END_VERSIONS > versions.yml "${task.process}": diff --git a/modules/nf-core/mmseqs/taxonomy/tests/main.nf.test.snap b/modules/nf-core/mmseqs/taxonomy/tests/main.nf.test.snap index 225680acbde..8a21ce4f9b2 100644 --- a/modules/nf-core/mmseqs/taxonomy/tests/main.nf.test.snap +++ b/modules/nf-core/mmseqs/taxonomy/tests/main.nf.test.snap @@ -59,7 +59,7 @@ ] ], "1": [ - "versions.yml:md5,a8f24dca956a1c84099ff129f826c63f" + "versions.yml:md5,019af282b55a28b89c5376b4e7a70fe4" ], "db_taxonomy": [ [ @@ -100,14 +100,14 @@ ] ], "versions": [ - "versions.yml:md5,a8f24dca956a1c84099ff129f826c63f" + "versions.yml:md5,019af282b55a28b89c5376b4e7a70fe4" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-08-09T10:12:00.148815" + "timestamp": "2025-01-16T12:52:06.466899117" } } \ No newline at end of file diff --git a/modules/nf-core/mmseqs/tsv2exprofiledb/environment.yml b/modules/nf-core/mmseqs/tsv2exprofiledb/environment.yml index 18547591a2e..235ad03ad82 100644 --- a/modules/nf-core/mmseqs/tsv2exprofiledb/environment.yml +++ b/modules/nf-core/mmseqs/tsv2exprofiledb/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::mmseqs2=15.6f452 + - bioconda::mmseqs2=16.747c6 diff --git a/modules/nf-core/mmseqs/tsv2exprofiledb/main.nf b/modules/nf-core/mmseqs/tsv2exprofiledb/main.nf index d043cac4c6a..b64f00fad5f 100644 --- a/modules/nf-core/mmseqs/tsv2exprofiledb/main.nf +++ b/modules/nf-core/mmseqs/tsv2exprofiledb/main.nf @@ -1,31 +1,31 @@ process MMSEQS_TSV2EXPROFILEDB { - tag "$db" + tag "${database}" label 'process_high' conda "${moduleDir}/environment.yml" - container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/mmseqs2:14.7e284--pl5321hf1761c0_0': - 'biocontainers/mmseqs2:14.7e284--pl5321hf1761c0_0' }" + container "${workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container + ? 'https://depot.galaxyproject.org/singularity/mmseqs2:16.747c6--pl5321h6a68c12_0' + : 'biocontainers/mmseqs2:16.747c6--pl5321h6a68c12_0'}" input: - path db + path database output: - path (db) , emit: db_exprofile + path (database) , emit: db_exprofile path "versions.yml", emit: versions - // INDEX=`find -L ./ -name "*.amb" | sed 's/\\.amb\$//'` + when: task.ext.when == null || task.ext.when script: def args = task.ext.args ?: '' """ - DB_PATH_NAME=\$(find -L "$db/" -name "*_seq.tsv" | sed 's/_seq\\.tsv\$//') + DB_PATH_NAME=\$(find -L "${database}/" -name "*_seq.tsv" | sed 's/_seq\\.tsv\$//') mmseqs tsv2exprofiledb \\ \${DB_PATH_NAME} \\ "\${DB_PATH_NAME}_db" \\ - $args + ${args} cat <<-END_VERSIONS > versions.yml "${task.process}": @@ -35,8 +35,7 @@ process MMSEQS_TSV2EXPROFILEDB { stub: """ - DB_PATH_NAME=\$(find -L "$db/" -name "*_seq.tsv" | sed 's/_seq\\.tsv\$//') - + DB_PATH_NAME=\$(find -L "${database}/" -name "*_seq.tsv" | sed 's/_seq\\.tsv\$//') touch "\${DB_PATH_NAME}_db" cat <<-END_VERSIONS > versions.yml diff --git a/modules/nf-core/mmseqs/tsv2exprofiledb/meta.yml b/modules/nf-core/mmseqs/tsv2exprofiledb/meta.yml index 4e8890addfa..284e16877e7 100644 --- a/modules/nf-core/mmseqs/tsv2exprofiledb/meta.yml +++ b/modules/nf-core/mmseqs/tsv2exprofiledb/meta.yml @@ -18,17 +18,17 @@ tools: licence: ["GPL v3"] identifier: biotools:mmseqs input: - - - db: + - - database: type: directory description: | - Directory containing the DB to be indexed + Directory containing the database to be indexed pattern: "*" output: - db_exprofile: - - db: + - database: type: directory description: | - Directory containing the expandable profile DB + Directory containing the expandable profile database pattern: "*" - versions: - versions.yml: @@ -40,3 +40,4 @@ authors: - "@JoseEspinosa" maintainers: - "@JoseEspinosa" + - "@sateeshperi" diff --git a/modules/nf-core/mmseqs/tsv2exprofiledb/tests/main.nf.test b/modules/nf-core/mmseqs/tsv2exprofiledb/tests/main.nf.test new file mode 100644 index 00000000000..04994caefa5 --- /dev/null +++ b/modules/nf-core/mmseqs/tsv2exprofiledb/tests/main.nf.test @@ -0,0 +1,75 @@ +nextflow_process { + + name "Test Process MMSEQS_TSV2EXPROFILEDB" + script "../main.nf" + process "MMSEQS_TSV2EXPROFILEDB" + config './nextflow.config' + + tag "modules" + tag "modules_nfcore" + tag "mmseqs" + tag "mmseqs/tsv2exprofiledb" + tag "untar" + + setup { + run("UNTAR") { + script "../../../untar" + process { + """ + input[0] = [ [:], + file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/db/mmseqs.tar.gz', checkIfExists: true) + ] + """ + } + } + } + + test("sarscov2 - db") { + + when { + process { + """ + input[0] = UNTAR.out.untar.map { meta, untar -> untar } + """ + } + } + + then { + // Many files are validly empty due to small test data, so just list names, and check a couple of expected files with contents + assertAll( + { assert process.success }, + { assert snapshot( + path(process.out.db_exprofile[0]).list().find { it.getFileName().toString() == "mmseqs.tsv" }, + path(process.out.db_exprofile[0]).list().find { it.getFileName().toString() == "mmseqs" }, + path(process.out.db_exprofile[0]).list().find { it.getFileName().toString() == "mmseqs_seq.index" }, + path(process.out.db_exprofile[0]).list().sort().collect { it.getFileName().toString() }, + process.out.versions + ).match() } + ) + } + } + + test("sarscov2 - db - stub") { + options "-stub" + + when { + process { + """ + input[0] = UNTAR.out.untar.map { meta, untar -> untar } + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + path(process.out.db_exprofile[0]).list().sort().collect { it.getFileName().toString() }, + process.out.versions + ).match() } + ) + } + + } + +} \ No newline at end of file diff --git a/modules/nf-core/mmseqs/tsv2exprofiledb/tests/main.nf.test.snap b/modules/nf-core/mmseqs/tsv2exprofiledb/tests/main.nf.test.snap new file mode 100644 index 00000000000..10de97a47ed --- /dev/null +++ b/modules/nf-core/mmseqs/tsv2exprofiledb/tests/main.nf.test.snap @@ -0,0 +1,149 @@ +{ + "sarscov2 - db - stub": { + "content": [ + [ + "mmseqs", + "mmseqs.dbtype", + "mmseqs.fasta", + "mmseqs.index", + "mmseqs.lookup", + "mmseqs.source", + "mmseqs.tsv", + "mmseqs_aln.0", + "mmseqs_aln.1", + "mmseqs_aln.2", + "mmseqs_aln.3", + "mmseqs_aln.4", + "mmseqs_aln.5", + "mmseqs_aln.6", + "mmseqs_aln.7", + "mmseqs_aln.dbtype", + "mmseqs_aln.index", + "mmseqs_aln.tsv", + "mmseqs_clu.0", + "mmseqs_clu.1", + "mmseqs_clu.2", + "mmseqs_clu.3", + "mmseqs_clu.4", + "mmseqs_clu.5", + "mmseqs_clu.6", + "mmseqs_clu.7", + "mmseqs_clu.dbtype", + "mmseqs_clu.index", + "mmseqs_db", + "mmseqs_h", + "mmseqs_h.dbtype", + "mmseqs_h.index", + "mmseqs_h.tsv", + "mmseqs_profile", + "mmseqs_profile.dbtype", + "mmseqs_profile.index", + "mmseqs_profile.lookup", + "mmseqs_profile.source", + "mmseqs_profile_h", + "mmseqs_profile_h.dbtype", + "mmseqs_profile_h.index", + "mmseqs_seq", + "mmseqs_seq.dbtype", + "mmseqs_seq.index", + "mmseqs_seq.lookup", + "mmseqs_seq.source", + "mmseqs_seq.tsv", + "mmseqs_seq_h", + "mmseqs_seq_h.dbtype", + "mmseqs_seq_h.index", + "tmp" + ], + [ + "versions.yml:md5,b5bfad51f25a7fb9add496eb09c5f2b2" + ] + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-16T06:32:24.126939413" + }, + "sarscov2 - db": { + "content": [ + "mmseqs.tsv:md5,4e7ba50ce2879660dc6595286bf0d097", + "mmseqs:md5,a5ba5a88d2995da3522dddb4abca07ef", + "mmseqs_seq.index:md5,09f8cf12406b814198156e56f5acd8dc", + [ + "mmseqs", + "mmseqs.dbtype", + "mmseqs.fasta", + "mmseqs.index", + "mmseqs.lookup", + "mmseqs.source", + "mmseqs.tsv", + "mmseqs_aln.0", + "mmseqs_aln.1", + "mmseqs_aln.2", + "mmseqs_aln.3", + "mmseqs_aln.4", + "mmseqs_aln.5", + "mmseqs_aln.6", + "mmseqs_aln.7", + "mmseqs_aln.dbtype", + "mmseqs_aln.index", + "mmseqs_aln.tsv", + "mmseqs_clu.0", + "mmseqs_clu.1", + "mmseqs_clu.2", + "mmseqs_clu.3", + "mmseqs_clu.4", + "mmseqs_clu.5", + "mmseqs_clu.6", + "mmseqs_clu.7", + "mmseqs_clu.dbtype", + "mmseqs_clu.index", + "mmseqs_db", + "mmseqs_db.dbtype", + "mmseqs_db.index", + "mmseqs_db_aln", + "mmseqs_db_aln.dbtype", + "mmseqs_db_aln.index", + "mmseqs_db_h", + "mmseqs_db_h.dbtype", + "mmseqs_db_h.index", + "mmseqs_db_seq", + "mmseqs_db_seq.dbtype", + "mmseqs_db_seq.index", + "mmseqs_db_seq_h", + "mmseqs_db_seq_h.dbtype", + "mmseqs_db_seq_h.index", + "mmseqs_h", + "mmseqs_h.dbtype", + "mmseqs_h.index", + "mmseqs_h.tsv", + "mmseqs_profile", + "mmseqs_profile.dbtype", + "mmseqs_profile.index", + "mmseqs_profile.lookup", + "mmseqs_profile.source", + "mmseqs_profile_h", + "mmseqs_profile_h.dbtype", + "mmseqs_profile_h.index", + "mmseqs_seq", + "mmseqs_seq.dbtype", + "mmseqs_seq.index", + "mmseqs_seq.lookup", + "mmseqs_seq.source", + "mmseqs_seq.tsv", + "mmseqs_seq_h", + "mmseqs_seq_h.dbtype", + "mmseqs_seq_h.index", + "tmp" + ], + [ + "versions.yml:md5,b5bfad51f25a7fb9add496eb09c5f2b2" + ] + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-16T06:32:11.496679278" + } +} \ No newline at end of file diff --git a/modules/nf-core/mmseqs/tsv2exprofiledb/tests/nextflow.config b/modules/nf-core/mmseqs/tsv2exprofiledb/tests/nextflow.config new file mode 100644 index 00000000000..d57fa806906 --- /dev/null +++ b/modules/nf-core/mmseqs/tsv2exprofiledb/tests/nextflow.config @@ -0,0 +1,5 @@ +process { + withName: UNTAR { + publishDir = [ enabled: false ] + } +} diff --git a/modules/nf-core/mosdepth/environment.yml b/modules/nf-core/mosdepth/environment.yml index e9379873800..bdc4fb5bc94 100644 --- a/modules/nf-core/mosdepth/environment.yml +++ b/modules/nf-core/mosdepth/environment.yml @@ -3,4 +3,4 @@ channels: - bioconda dependencies: # renovate: datasource=conda depName=bioconda/mosdepth - - mosdepth=0.3.8 + - mosdepth=0.3.10 diff --git a/modules/nf-core/mosdepth/main.nf b/modules/nf-core/mosdepth/main.nf index 6f4a838343c..3bf945f909b 100644 --- a/modules/nf-core/mosdepth/main.nf +++ b/modules/nf-core/mosdepth/main.nf @@ -4,8 +4,8 @@ process MOSDEPTH { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/mosdepth:0.3.8--hd299d5a_0' : - 'biocontainers/mosdepth:0.3.8--hd299d5a_0'}" + 'https://depot.galaxyproject.org/singularity/mosdepth:0.3.10--h4e814b3_1' : + 'biocontainers/mosdepth:0.3.10--h4e814b3_1'}" input: tuple val(meta), path(bam), path(bai), path(bed) diff --git a/modules/nf-core/mosdepth/tests/main.nf.test.snap b/modules/nf-core/mosdepth/tests/main.nf.test.snap index c604540b032..67e16562bc7 100644 --- a/modules/nf-core/mosdepth/tests/main.nf.test.snap +++ b/modules/nf-core/mosdepth/tests/main.nf.test.snap @@ -39,7 +39,7 @@ ] ], "12": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ], "2": [ [ @@ -222,15 +222,15 @@ ] ], "versions": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-04-29T13:33:16.953408231" + "timestamp": "2025-01-17T14:57:12.350279421" }, "homo_sapiens - cram, crai, bed": { "content": [ @@ -260,7 +260,7 @@ ], "12": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ], "2": [ [ @@ -289,7 +289,7 @@ "id": "test", "single_end": true }, - "test.per-base.bed.gz.csi:md5,6f322dc9250522a701bd68bd18fa8294" + "test.per-base.bed.gz.csi:md5,9e649ac749ff6c6073bef5ab63e8aaa4" ] ], "6": [ @@ -307,7 +307,7 @@ "id": "test", "single_end": true }, - "test.regions.bed.gz.csi:md5,e7df086f0a36e88ca231e143d43bd3f9" + "test.regions.bed.gz.csi:md5,47669cfe41f3e222e74d81e1b1be191f" ] ], "8": [ @@ -340,7 +340,7 @@ "id": "test", "single_end": true }, - "test.per-base.bed.gz.csi:md5,6f322dc9250522a701bd68bd18fa8294" + "test.per-base.bed.gz.csi:md5,9e649ac749ff6c6073bef5ab63e8aaa4" ] ], "per_base_d4": [ @@ -367,7 +367,7 @@ "id": "test", "single_end": true }, - "test.regions.bed.gz.csi:md5,e7df086f0a36e88ca231e143d43bd3f9" + "test.regions.bed.gz.csi:md5,47669cfe41f3e222e74d81e1b1be191f" ] ], "regions_txt": [ @@ -395,15 +395,15 @@ ], "versions": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-04-29T13:32:50.160217828" + "timestamp": "2025-01-17T14:56:12.528228123" }, "homo_sapiens - bam, bai, [] - quantized": { "content": [ @@ -433,7 +433,7 @@ ], "12": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ], "2": [ @@ -456,7 +456,7 @@ "id": "test", "single_end": true }, - "test.per-base.bed.gz.csi:md5,6f322dc9250522a701bd68bd18fa8294" + "test.per-base.bed.gz.csi:md5,9e649ac749ff6c6073bef5ab63e8aaa4" ] ], "6": [ @@ -480,7 +480,7 @@ "id": "test", "single_end": true }, - "test.quantized.bed.gz.csi:md5,4f69e6ace50206a2768be66ded3a56f0" + "test.quantized.bed.gz.csi:md5,be9617f551f19a33923f1e886eaefb93" ] ], "global_txt": [ @@ -507,7 +507,7 @@ "id": "test", "single_end": true }, - "test.per-base.bed.gz.csi:md5,6f322dc9250522a701bd68bd18fa8294" + "test.per-base.bed.gz.csi:md5,9e649ac749ff6c6073bef5ab63e8aaa4" ] ], "per_base_d4": [ @@ -528,7 +528,7 @@ "id": "test", "single_end": true }, - "test.quantized.bed.gz.csi:md5,4f69e6ace50206a2768be66ded3a56f0" + "test.quantized.bed.gz.csi:md5,be9617f551f19a33923f1e886eaefb93" ] ], "regions_bed": [ @@ -556,15 +556,15 @@ ], "versions": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-04-29T13:33:01.164885111" + "timestamp": "2025-01-17T14:56:38.422491251" }, "homo_sapiens - bam, bai, bed": { "content": [ @@ -594,7 +594,7 @@ ], "12": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ], "2": [ [ @@ -623,7 +623,7 @@ "id": "test", "single_end": true }, - "test.per-base.bed.gz.csi:md5,6f322dc9250522a701bd68bd18fa8294" + "test.per-base.bed.gz.csi:md5,9e649ac749ff6c6073bef5ab63e8aaa4" ] ], "6": [ @@ -641,7 +641,7 @@ "id": "test", "single_end": true }, - "test.regions.bed.gz.csi:md5,e7df086f0a36e88ca231e143d43bd3f9" + "test.regions.bed.gz.csi:md5,47669cfe41f3e222e74d81e1b1be191f" ] ], "8": [ @@ -674,7 +674,7 @@ "id": "test", "single_end": true }, - "test.per-base.bed.gz.csi:md5,6f322dc9250522a701bd68bd18fa8294" + "test.per-base.bed.gz.csi:md5,9e649ac749ff6c6073bef5ab63e8aaa4" ] ], "per_base_d4": [ @@ -701,7 +701,7 @@ "id": "test", "single_end": true }, - "test.regions.bed.gz.csi:md5,e7df086f0a36e88ca231e143d43bd3f9" + "test.regions.bed.gz.csi:md5,47669cfe41f3e222e74d81e1b1be191f" ] ], "regions_txt": [ @@ -729,15 +729,15 @@ ], "versions": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-04-29T13:32:39.071657456" + "timestamp": "2025-01-17T14:55:43.01015749" }, "homo_sapiens - bam, bai, [] - window": { "content": [ @@ -767,7 +767,7 @@ ], "12": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ], "2": [ [ @@ -796,7 +796,7 @@ "id": "test", "single_end": true }, - "test.per-base.bed.gz.csi:md5,6f322dc9250522a701bd68bd18fa8294" + "test.per-base.bed.gz.csi:md5,9e649ac749ff6c6073bef5ab63e8aaa4" ] ], "6": [ @@ -814,7 +814,7 @@ "id": "test", "single_end": true }, - "test.regions.bed.gz.csi:md5,2a30bcb7f5c7632136b3efce24723970" + "test.regions.bed.gz.csi:md5,257d67678136963d9dd904330079609d" ] ], "8": [ @@ -847,7 +847,7 @@ "id": "test", "single_end": true }, - "test.per-base.bed.gz.csi:md5,6f322dc9250522a701bd68bd18fa8294" + "test.per-base.bed.gz.csi:md5,9e649ac749ff6c6073bef5ab63e8aaa4" ] ], "per_base_d4": [ @@ -874,7 +874,7 @@ "id": "test", "single_end": true }, - "test.regions.bed.gz.csi:md5,2a30bcb7f5c7632136b3efce24723970" + "test.regions.bed.gz.csi:md5,257d67678136963d9dd904330079609d" ] ], "regions_txt": [ @@ -902,15 +902,15 @@ ], "versions": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-04-29T13:32:55.631776118" + "timestamp": "2025-01-17T14:56:27.10647246" }, "homo_sapiens - bam, bai, []": { "content": [ @@ -940,7 +940,7 @@ ], "12": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ], "2": [ @@ -963,7 +963,7 @@ "id": "test", "single_end": true }, - "test.per-base.bed.gz.csi:md5,6f322dc9250522a701bd68bd18fa8294" + "test.per-base.bed.gz.csi:md5,9e649ac749ff6c6073bef5ab63e8aaa4" ] ], "6": [ @@ -1002,7 +1002,7 @@ "id": "test", "single_end": true }, - "test.per-base.bed.gz.csi:md5,6f322dc9250522a701bd68bd18fa8294" + "test.per-base.bed.gz.csi:md5,9e649ac749ff6c6073bef5ab63e8aaa4" ] ], "per_base_d4": [ @@ -1039,15 +1039,15 @@ ], "versions": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-04-29T13:32:33.642125299" + "timestamp": "2025-01-17T14:55:30.449110281" }, "homo_sapiens - cram, crai, []": { "content": [ @@ -1077,7 +1077,7 @@ ], "12": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ], "2": [ @@ -1100,7 +1100,7 @@ "id": "test", "single_end": true }, - "test.per-base.bed.gz.csi:md5,6f322dc9250522a701bd68bd18fa8294" + "test.per-base.bed.gz.csi:md5,9e649ac749ff6c6073bef5ab63e8aaa4" ] ], "6": [ @@ -1139,7 +1139,7 @@ "id": "test", "single_end": true }, - "test.per-base.bed.gz.csi:md5,6f322dc9250522a701bd68bd18fa8294" + "test.per-base.bed.gz.csi:md5,9e649ac749ff6c6073bef5ab63e8aaa4" ] ], "per_base_d4": [ @@ -1176,15 +1176,15 @@ ], "versions": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-04-29T13:32:44.704920941" + "timestamp": "2025-01-17T14:55:55.244274402" }, "homo_sapiens - bam, bai, bed - thresholds": { "content": [ @@ -1222,11 +1222,11 @@ "id": "test", "single_end": true }, - "test.thresholds.bed.gz.csi:md5,219414a0751185adb98d2235d83ea055" + "test.thresholds.bed.gz.csi:md5,912055ee9452229439df6fae95644196" ] ], "12": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ], "2": [ [ @@ -1255,7 +1255,7 @@ "id": "test", "single_end": true }, - "test.per-base.bed.gz.csi:md5,6f322dc9250522a701bd68bd18fa8294" + "test.per-base.bed.gz.csi:md5,9e649ac749ff6c6073bef5ab63e8aaa4" ] ], "6": [ @@ -1273,7 +1273,7 @@ "id": "test", "single_end": true }, - "test.regions.bed.gz.csi:md5,e7df086f0a36e88ca231e143d43bd3f9" + "test.regions.bed.gz.csi:md5,47669cfe41f3e222e74d81e1b1be191f" ] ], "8": [ @@ -1306,7 +1306,7 @@ "id": "test", "single_end": true }, - "test.per-base.bed.gz.csi:md5,6f322dc9250522a701bd68bd18fa8294" + "test.per-base.bed.gz.csi:md5,9e649ac749ff6c6073bef5ab63e8aaa4" ] ], "per_base_d4": [ @@ -1333,7 +1333,7 @@ "id": "test", "single_end": true }, - "test.regions.bed.gz.csi:md5,e7df086f0a36e88ca231e143d43bd3f9" + "test.regions.bed.gz.csi:md5,47669cfe41f3e222e74d81e1b1be191f" ] ], "regions_txt": [ @@ -1369,18 +1369,18 @@ "id": "test", "single_end": true }, - "test.thresholds.bed.gz.csi:md5,219414a0751185adb98d2235d83ea055" + "test.thresholds.bed.gz.csi:md5,912055ee9452229439df6fae95644196" ] ], "versions": [ - "versions.yml:md5,87634e525fb18990cd98fe1080ad72ce" + "versions.yml:md5,333368078626c18a32eeb12299080cc9" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-04-29T13:33:06.737266831" + "timestamp": "2025-01-17T14:56:49.888375978" } } \ No newline at end of file diff --git a/modules/nf-core/seqkit/concat/environment.yml b/modules/nf-core/seqkit/concat/environment.yml index 4f8058a9a57..160a67c08e8 100644 --- a/modules/nf-core/seqkit/concat/environment.yml +++ b/modules/nf-core/seqkit/concat/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - "bioconda::seqkit=2.8.1" + - "bioconda::seqkit=2.9.0" diff --git a/modules/nf-core/seqkit/concat/main.nf b/modules/nf-core/seqkit/concat/main.nf index bb9eec1e390..d10d9780fb7 100644 --- a/modules/nf-core/seqkit/concat/main.nf +++ b/modules/nf-core/seqkit/concat/main.nf @@ -4,8 +4,8 @@ process SEQKIT_CONCAT { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/seqkit:2.8.1--h9ee0642_0': - 'biocontainers/seqkit:2.8.1--h9ee0642_0' }" + 'https://depot.galaxyproject.org/singularity/seqkit:2.9.0--h9ee0642_0': + 'biocontainers/seqkit:2.9.0--h9ee0642_0' }" input: tuple val(meta), path(input, stageAs: 'in/*') diff --git a/modules/nf-core/seqkit/concat/tests/main.nf.test.snap b/modules/nf-core/seqkit/concat/tests/main.nf.test.snap index 1010d6988b6..5f85418c6d8 100644 --- a/modules/nf-core/seqkit/concat/tests/main.nf.test.snap +++ b/modules/nf-core/seqkit/concat/tests/main.nf.test.snap @@ -2,14 +2,14 @@ "sarscov2 and human primers - fasta": { "content": [ [ - "versions.yml:md5,32d898698c9224f989b9527fe0b948d4" + "versions.yml:md5,13b312c8ca94f9c6460ffc759a5c79c9" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:33:12.38186745" + "timestamp": "2025-01-15T15:06:45.246143" }, "sarscov2 and human primers - fasta - stub": { "content": [ @@ -23,7 +23,7 @@ ] ], "1": [ - "versions.yml:md5,32d898698c9224f989b9527fe0b948d4" + "versions.yml:md5,13b312c8ca94f9c6460ffc759a5c79c9" ], "fastx": [ [ @@ -34,14 +34,14 @@ ] ], "versions": [ - "versions.yml:md5,32d898698c9224f989b9527fe0b948d4" + "versions.yml:md5,13b312c8ca94f9c6460ffc759a5c79c9" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:33:22.533226274" + "timestamp": "2025-01-15T15:06:49.428563" } } \ No newline at end of file diff --git a/modules/nf-core/seqkit/fq2fa/environment.yml b/modules/nf-core/seqkit/fq2fa/environment.yml index 41f3e7de43d..1f93892f485 100644 --- a/modules/nf-core/seqkit/fq2fa/environment.yml +++ b/modules/nf-core/seqkit/fq2fa/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::seqkit=2.8.1 + - bioconda::seqkit=2.9.0 diff --git a/modules/nf-core/seqkit/fq2fa/main.nf b/modules/nf-core/seqkit/fq2fa/main.nf index 77462ad0c5a..1707dbc5fe9 100644 --- a/modules/nf-core/seqkit/fq2fa/main.nf +++ b/modules/nf-core/seqkit/fq2fa/main.nf @@ -4,8 +4,8 @@ process SEQKIT_FQ2FA { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/seqkit:2.8.1--h9ee0642_0' : - 'biocontainers/seqkit:2.8.1--h9ee0642_0' }" + 'https://depot.galaxyproject.org/singularity/seqkit:2.9.0--h9ee0642_0' : + 'biocontainers/seqkit:2.9.0--h9ee0642_0' }" input: tuple val(meta), path(fastq) diff --git a/modules/nf-core/seqkit/fq2fa/tests/main.nf.test.snap b/modules/nf-core/seqkit/fq2fa/tests/main.nf.test.snap index b10ff751508..4d39a7e9e37 100644 --- a/modules/nf-core/seqkit/fq2fa/tests/main.nf.test.snap +++ b/modules/nf-core/seqkit/fq2fa/tests/main.nf.test.snap @@ -12,7 +12,7 @@ ] ], "1": [ - "versions.yml:md5,70efc6839fd6443ee9116c082a730f72" + "versions.yml:md5,9799aeba106e1fd61b65fd876eabd863" ], "fasta": [ [ @@ -24,15 +24,15 @@ ] ], "versions": [ - "versions.yml:md5,70efc6839fd6443ee9116c082a730f72" + "versions.yml:md5,9799aeba106e1fd61b65fd876eabd863" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-13T08:56:21.234724552" + "timestamp": "2025-01-15T15:07:44.366504" }, "sarscov2 - bam": { "content": [ @@ -47,7 +47,7 @@ ] ], "1": [ - "versions.yml:md5,70efc6839fd6443ee9116c082a730f72" + "versions.yml:md5,9799aeba106e1fd61b65fd876eabd863" ], "fasta": [ [ @@ -59,14 +59,14 @@ ] ], "versions": [ - "versions.yml:md5,70efc6839fd6443ee9116c082a730f72" + "versions.yml:md5,9799aeba106e1fd61b65fd876eabd863" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-13T08:55:54.648865102" + "timestamp": "2025-01-15T15:07:40.187352" } } \ No newline at end of file diff --git a/modules/nf-core/seqkit/fx2tab/environment.yml b/modules/nf-core/seqkit/fx2tab/environment.yml index 41f3e7de43d..1f93892f485 100644 --- a/modules/nf-core/seqkit/fx2tab/environment.yml +++ b/modules/nf-core/seqkit/fx2tab/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::seqkit=2.8.1 + - bioconda::seqkit=2.9.0 diff --git a/modules/nf-core/seqkit/fx2tab/main.nf b/modules/nf-core/seqkit/fx2tab/main.nf index d96b0b9d370..7a3f4103391 100644 --- a/modules/nf-core/seqkit/fx2tab/main.nf +++ b/modules/nf-core/seqkit/fx2tab/main.nf @@ -4,8 +4,8 @@ process SEQKIT_FX2TAB { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/seqkit:2.8.1--h9ee0642_0' : - 'biocontainers/seqkit:2.8.1--h9ee0642_0' }" + 'https://depot.galaxyproject.org/singularity/seqkit:2.9.0--h9ee0642_0' : + 'biocontainers/seqkit:2.9.0--h9ee0642_0' }" input: tuple val(meta), path(fastx) @@ -34,4 +34,16 @@ process SEQKIT_FX2TAB { seqkit: \$( seqkit | sed '3!d; s/Version: //' ) END_VERSIONS """ + + stub: + def prefix = task.ext.prefix ?: "${meta.id}" + def suffix = task.ext.suffix ?: "txt.zst" + """ + touch ${prefix}.${suffix} + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + seqkit: \$( seqkit | sed '3!d; s/Version: //' ) + END_VERSIONS + """ } diff --git a/modules/nf-core/seqkit/fx2tab/tests/main.nf.test.snap b/modules/nf-core/seqkit/fx2tab/tests/main.nf.test.snap index 29421657250..38c0b645ee2 100644 --- a/modules/nf-core/seqkit/fx2tab/tests/main.nf.test.snap +++ b/modules/nf-core/seqkit/fx2tab/tests/main.nf.test.snap @@ -7,30 +7,30 @@ { "id": "test" }, - "test.txt.zst:md5,08902131ebe68052a97178bc426bf944" + "test.txt.zst:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], "1": [ - "versions.yml:md5,ba37c06c2d66e54301b2cd35ae47d0e8" + "versions.yml:md5,b35c25f76ae716eb6bed4f18abf12d50" ], "text": [ [ { "id": "test" }, - "test.txt.zst:md5,08902131ebe68052a97178bc426bf944" + "test.txt.zst:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], "versions": [ - "versions.yml:md5,ba37c06c2d66e54301b2cd35ae47d0e8" + "versions.yml:md5,b35c25f76ae716eb6bed4f18abf12d50" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-07T16:01:39.484590737" + "timestamp": "2025-01-15T12:18:24.281141" }, "sarscov2 - fasta": { "content": [ @@ -44,7 +44,7 @@ ] ], "1": [ - "versions.yml:md5,ba37c06c2d66e54301b2cd35ae47d0e8" + "versions.yml:md5,b35c25f76ae716eb6bed4f18abf12d50" ], "text": [ [ @@ -55,15 +55,15 @@ ] ], "versions": [ - "versions.yml:md5,ba37c06c2d66e54301b2cd35ae47d0e8" + "versions.yml:md5,b35c25f76ae716eb6bed4f18abf12d50" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-07T16:01:21.332957847" + "timestamp": "2025-01-15T12:18:14.007765" }, "sarscov2 - fastq": { "content": [ @@ -77,7 +77,7 @@ ] ], "1": [ - "versions.yml:md5,ba37c06c2d66e54301b2cd35ae47d0e8" + "versions.yml:md5,b35c25f76ae716eb6bed4f18abf12d50" ], "text": [ [ @@ -88,14 +88,14 @@ ] ], "versions": [ - "versions.yml:md5,ba37c06c2d66e54301b2cd35ae47d0e8" + "versions.yml:md5,b35c25f76ae716eb6bed4f18abf12d50" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-07T16:01:29.885155029" + "timestamp": "2025-01-15T12:18:19.228692" } } \ No newline at end of file diff --git a/modules/nf-core/seqkit/grep/environment.yml b/modules/nf-core/seqkit/grep/environment.yml index 41f3e7de43d..1f93892f485 100644 --- a/modules/nf-core/seqkit/grep/environment.yml +++ b/modules/nf-core/seqkit/grep/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::seqkit=2.8.1 + - bioconda::seqkit=2.9.0 diff --git a/modules/nf-core/seqkit/grep/main.nf b/modules/nf-core/seqkit/grep/main.nf index ce6dc2422c1..9dc2a8926a8 100644 --- a/modules/nf-core/seqkit/grep/main.nf +++ b/modules/nf-core/seqkit/grep/main.nf @@ -5,8 +5,8 @@ process SEQKIT_GREP { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/seqkit:2.8.1--h9ee0642_0': - 'biocontainers/seqkit:2.8.1--h9ee0642_0' }" + 'https://depot.galaxyproject.org/singularity/seqkit:2.9.0--h9ee0642_0': + 'biocontainers/seqkit:2.9.0--h9ee0642_0' }" input: tuple val(meta), path(sequence) diff --git a/modules/nf-core/seqkit/grep/tests/main.nf.test.snap b/modules/nf-core/seqkit/grep/tests/main.nf.test.snap index 2ab6f4b84e7..26a1abf7c3e 100644 --- a/modules/nf-core/seqkit/grep/tests/main.nf.test.snap +++ b/modules/nf-core/seqkit/grep/tests/main.nf.test.snap @@ -12,7 +12,7 @@ ] ], "1": [ - "versions.yml:md5,2b6d2bf7e727f835a915128c179cebfa" + "versions.yml:md5,a89075d71a71766480983dc451a119d2" ], "filter": [ [ @@ -24,15 +24,15 @@ ] ], "versions": [ - "versions.yml:md5,2b6d2bf7e727f835a915128c179cebfa" + "versions.yml:md5,a89075d71a71766480983dc451a119d2" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:33:47.542049206" + "timestamp": "2025-01-15T15:08:46.340613" }, "with_pattern": { "content": [ @@ -47,7 +47,7 @@ ] ], "1": [ - "versions.yml:md5,2b6d2bf7e727f835a915128c179cebfa" + "versions.yml:md5,a89075d71a71766480983dc451a119d2" ], "filter": [ [ @@ -59,15 +59,15 @@ ] ], "versions": [ - "versions.yml:md5,2b6d2bf7e727f835a915128c179cebfa" + "versions.yml:md5,a89075d71a71766480983dc451a119d2" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:38:28.77443193" + "timestamp": "2025-01-15T15:08:55.077598" }, "with_file - stub": { "content": [ @@ -82,7 +82,7 @@ ] ], "1": [ - "versions.yml:md5,2b6d2bf7e727f835a915128c179cebfa" + "versions.yml:md5,a89075d71a71766480983dc451a119d2" ], "filter": [ [ @@ -94,14 +94,14 @@ ] ], "versions": [ - "versions.yml:md5,2b6d2bf7e727f835a915128c179cebfa" + "versions.yml:md5,a89075d71a71766480983dc451a119d2" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:34:12.85678016" + "timestamp": "2025-01-15T15:09:03.009991" } } \ No newline at end of file diff --git a/modules/nf-core/seqkit/pair/environment.yml b/modules/nf-core/seqkit/pair/environment.yml index 41f3e7de43d..1f93892f485 100644 --- a/modules/nf-core/seqkit/pair/environment.yml +++ b/modules/nf-core/seqkit/pair/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::seqkit=2.8.1 + - bioconda::seqkit=2.9.0 diff --git a/modules/nf-core/seqkit/pair/main.nf b/modules/nf-core/seqkit/pair/main.nf index df0b3a5d031..258a62fde51 100644 --- a/modules/nf-core/seqkit/pair/main.nf +++ b/modules/nf-core/seqkit/pair/main.nf @@ -4,8 +4,8 @@ process SEQKIT_PAIR { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/seqkit:2.8.1--h9ee0642_0': - 'biocontainers/seqkit:2.8.1--h9ee0642_0' }" + 'https://depot.galaxyproject.org/singularity/seqkit:2.9.0--h9ee0642_0': + 'biocontainers/seqkit:2.9.0--h9ee0642_0' }" input: tuple val(meta), path(reads) diff --git a/modules/nf-core/seqkit/pair/tests/main.nf.test.snap b/modules/nf-core/seqkit/pair/tests/main.nf.test.snap index c25d745fe4c..c301b744f75 100644 --- a/modules/nf-core/seqkit/pair/tests/main.nf.test.snap +++ b/modules/nf-core/seqkit/pair/tests/main.nf.test.snap @@ -18,7 +18,7 @@ ], "2": [ - "versions.yml:md5,77fbea93a3c50ec0f6da886d9849622e" + "versions.yml:md5,8281825c657e9ddabacfeb0d1c07f11e" ], "reads": [ [ @@ -36,15 +36,15 @@ ], "versions": [ - "versions.yml:md5,77fbea93a3c50ec0f6da886d9849622e" + "versions.yml:md5,8281825c657e9ddabacfeb0d1c07f11e" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:11:09.767703292" + "timestamp": "2025-01-15T15:09:51.247775" }, "sarscov2 - bam": { "content": [ @@ -65,7 +65,7 @@ ], "2": [ - "versions.yml:md5,77fbea93a3c50ec0f6da886d9849622e" + "versions.yml:md5,8281825c657e9ddabacfeb0d1c07f11e" ], "reads": [ [ @@ -83,14 +83,14 @@ ], "versions": [ - "versions.yml:md5,77fbea93a3c50ec0f6da886d9849622e" + "versions.yml:md5,8281825c657e9ddabacfeb0d1c07f11e" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-07T15:54:57.649454879" + "timestamp": "2025-01-15T15:09:46.914754" } } \ No newline at end of file diff --git a/modules/nf-core/seqkit/replace/environment.yml b/modules/nf-core/seqkit/replace/environment.yml index 41f3e7de43d..1f93892f485 100644 --- a/modules/nf-core/seqkit/replace/environment.yml +++ b/modules/nf-core/seqkit/replace/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::seqkit=2.8.1 + - bioconda::seqkit=2.9.0 diff --git a/modules/nf-core/seqkit/replace/main.nf b/modules/nf-core/seqkit/replace/main.nf index 70811c8bbd7..2da15bc02ae 100644 --- a/modules/nf-core/seqkit/replace/main.nf +++ b/modules/nf-core/seqkit/replace/main.nf @@ -4,8 +4,8 @@ process SEQKIT_REPLACE { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/seqkit:2.8.1--h9ee0642_0': - 'biocontainers/seqkit:2.8.1--h9ee0642_0' }" + 'https://depot.galaxyproject.org/singularity/seqkit:2.9.0--h9ee0642_0': + 'biocontainers/seqkit:2.9.0--h9ee0642_0' }" input: tuple val(meta), path(fastx) diff --git a/modules/nf-core/seqkit/replace/tests/main.nf.test.snap b/modules/nf-core/seqkit/replace/tests/main.nf.test.snap index 24e1887f86e..83625875b58 100644 --- a/modules/nf-core/seqkit/replace/tests/main.nf.test.snap +++ b/modules/nf-core/seqkit/replace/tests/main.nf.test.snap @@ -11,7 +11,7 @@ ] ], "1": [ - "versions.yml:md5,d0b955de076997af3989d2ce5b5417b6" + "versions.yml:md5,edcad74f001a6cf3a54d2a99bd532b50" ], "fastx": [ [ @@ -22,15 +22,15 @@ ] ], "versions": [ - "versions.yml:md5,d0b955de076997af3989d2ce5b5417b6" + "versions.yml:md5,edcad74f001a6cf3a54d2a99bd532b50" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T11:10:12.100214525" + "timestamp": "2025-01-15T15:10:45.336609" }, "sarscov2 - fasta - replace": { "content": [ @@ -44,7 +44,7 @@ ] ], "1": [ - "versions.yml:md5,d0b955de076997af3989d2ce5b5417b6" + "versions.yml:md5,edcad74f001a6cf3a54d2a99bd532b50" ], "fastx": [ [ @@ -55,15 +55,15 @@ ] ], "versions": [ - "versions.yml:md5,d0b955de076997af3989d2ce5b5417b6" + "versions.yml:md5,edcad74f001a6cf3a54d2a99bd532b50" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-07T16:23:57.895160549" + "timestamp": "2025-01-15T15:10:36.722731" }, "sarscov2 - fasta - uncomp": { "content": [ @@ -77,7 +77,7 @@ ] ], "1": [ - "versions.yml:md5,d0b955de076997af3989d2ce5b5417b6" + "versions.yml:md5,edcad74f001a6cf3a54d2a99bd532b50" ], "fastx": [ [ @@ -88,14 +88,14 @@ ] ], "versions": [ - "versions.yml:md5,d0b955de076997af3989d2ce5b5417b6" + "versions.yml:md5,edcad74f001a6cf3a54d2a99bd532b50" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-07T16:24:09.142463316" + "timestamp": "2025-01-15T15:10:41.090521" } } \ No newline at end of file diff --git a/modules/nf-core/seqkit/rmdup/environment.yml b/modules/nf-core/seqkit/rmdup/environment.yml index 4f8058a9a57..160a67c08e8 100644 --- a/modules/nf-core/seqkit/rmdup/environment.yml +++ b/modules/nf-core/seqkit/rmdup/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - "bioconda::seqkit=2.8.1" + - "bioconda::seqkit=2.9.0" diff --git a/modules/nf-core/seqkit/rmdup/main.nf b/modules/nf-core/seqkit/rmdup/main.nf index 410bb8366b1..f943a76fee2 100644 --- a/modules/nf-core/seqkit/rmdup/main.nf +++ b/modules/nf-core/seqkit/rmdup/main.nf @@ -5,8 +5,8 @@ process SEQKIT_RMDUP { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/seqkit:2.8.1--h9ee0642_0': - 'biocontainers/seqkit:2.8.1--h9ee0642_0' }" + 'https://depot.galaxyproject.org/singularity/seqkit:2.9.0--h9ee0642_0': + 'biocontainers/seqkit:2.9.0--h9ee0642_0' }" input: tuple val(meta), path(fastx) diff --git a/modules/nf-core/seqkit/rmdup/tests/main.nf.test.snap b/modules/nf-core/seqkit/rmdup/tests/main.nf.test.snap index 68c415cd9ce..4b2858daa1e 100644 --- a/modules/nf-core/seqkit/rmdup/tests/main.nf.test.snap +++ b/modules/nf-core/seqkit/rmdup/tests/main.nf.test.snap @@ -19,7 +19,7 @@ ] ], "2": [ - "versions.yml:md5,d2b8da3c114c2bd1c6606030df55b6aa" + "versions.yml:md5,9855ca606b68cb8c32718a1249488688" ], "fastx": [ [ @@ -38,15 +38,15 @@ ] ], "versions": [ - "versions.yml:md5,d2b8da3c114c2bd1c6606030df55b6aa" + "versions.yml:md5,9855ca606b68cb8c32718a1249488688" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-27T19:40:01.6034" + "timestamp": "2025-01-15T15:12:04.249165" }, "sarscov2-test_1_fastq_gz": { "content": [ @@ -68,7 +68,7 @@ ] ], "2": [ - "versions.yml:md5,d2b8da3c114c2bd1c6606030df55b6aa" + "versions.yml:md5,9855ca606b68cb8c32718a1249488688" ], "fastx": [ [ @@ -87,15 +87,15 @@ ] ], "versions": [ - "versions.yml:md5,d2b8da3c114c2bd1c6606030df55b6aa" + "versions.yml:md5,9855ca606b68cb8c32718a1249488688" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-27T19:37:48.551195" + "timestamp": "2025-01-15T15:11:57.07272" }, "sarscov2-genome_fasta": { "content": [ @@ -117,7 +117,7 @@ ] ], "2": [ - "versions.yml:md5,d2b8da3c114c2bd1c6606030df55b6aa" + "versions.yml:md5,9855ca606b68cb8c32718a1249488688" ], "fastx": [ [ @@ -136,17 +136,17 @@ ] ], "versions": [ - "versions.yml:md5,d2b8da3c114c2bd1c6606030df55b6aa" + "versions.yml:md5,9855ca606b68cb8c32718a1249488688" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-27T19:37:38.821528" + "timestamp": "2025-01-15T15:11:44.13147" }, - "sarscov2-genome_fasta_gz": { + "repeated-fasta": { "content": [ { "0": [ @@ -154,7 +154,7 @@ { "id": "test" }, - "test.fasta.gz:md5,483f4a5dfe60171c86ee9b7e6dff908b" + "test.fasta:md5,7510a742291241e7d7556bf720caf65c" ] ], "1": [ @@ -162,18 +162,18 @@ { "id": "test" }, - "test.log:md5,a41135cfe024baaf42f135583fe73f0d" + "test.log:md5,314c0aaef0f832a217a3f6ce3f8bc117" ] ], "2": [ - "versions.yml:md5,d2b8da3c114c2bd1c6606030df55b6aa" + "versions.yml:md5,9855ca606b68cb8c32718a1249488688" ], "fastx": [ [ { "id": "test" }, - "test.fasta.gz:md5,483f4a5dfe60171c86ee9b7e6dff908b" + "test.fasta:md5,7510a742291241e7d7556bf720caf65c" ] ], "log": [ @@ -181,21 +181,21 @@ { "id": "test" }, - "test.log:md5,a41135cfe024baaf42f135583fe73f0d" + "test.log:md5,314c0aaef0f832a217a3f6ce3f8bc117" ] ], "versions": [ - "versions.yml:md5,d2b8da3c114c2bd1c6606030df55b6aa" + "versions.yml:md5,9855ca606b68cb8c32718a1249488688" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-27T19:37:43.723054" + "timestamp": "2025-01-15T15:11:48.203975" }, - "repeated-fasta": { + "sarscov2-genome_fasta_gz": { "content": [ { "0": [ @@ -203,7 +203,7 @@ { "id": "test" }, - "test.fasta:md5,7510a742291241e7d7556bf720caf65c" + "test.fasta.gz:md5,483f4a5dfe60171c86ee9b7e6dff908b" ] ], "1": [ @@ -211,18 +211,18 @@ { "id": "test" }, - "test.log:md5,314c0aaef0f832a217a3f6ce3f8bc117" + "test.log:md5,a41135cfe024baaf42f135583fe73f0d" ] ], "2": [ - "versions.yml:md5,d2b8da3c114c2bd1c6606030df55b6aa" + "versions.yml:md5,9855ca606b68cb8c32718a1249488688" ], "fastx": [ [ { "id": "test" }, - "test.fasta:md5,7510a742291241e7d7556bf720caf65c" + "test.fasta.gz:md5,483f4a5dfe60171c86ee9b7e6dff908b" ] ], "log": [ @@ -230,18 +230,18 @@ { "id": "test" }, - "test.log:md5,314c0aaef0f832a217a3f6ce3f8bc117" + "test.log:md5,a41135cfe024baaf42f135583fe73f0d" ] ], "versions": [ - "versions.yml:md5,d2b8da3c114c2bd1c6606030df55b6aa" + "versions.yml:md5,9855ca606b68cb8c32718a1249488688" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-27T19:52:34.545807" + "timestamp": "2025-01-15T15:11:52.657459" } } \ No newline at end of file diff --git a/modules/nf-core/seqkit/seq/environment.yml b/modules/nf-core/seqkit/seq/environment.yml index 4f8058a9a57..160a67c08e8 100644 --- a/modules/nf-core/seqkit/seq/environment.yml +++ b/modules/nf-core/seqkit/seq/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - "bioconda::seqkit=2.8.1" + - "bioconda::seqkit=2.9.0" diff --git a/modules/nf-core/seqkit/seq/main.nf b/modules/nf-core/seqkit/seq/main.nf index d7d38fc882c..9d76da213c0 100644 --- a/modules/nf-core/seqkit/seq/main.nf +++ b/modules/nf-core/seqkit/seq/main.nf @@ -5,8 +5,8 @@ process SEQKIT_SEQ { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/seqkit:2.8.1--h9ee0642_0': - 'biocontainers/seqkit:2.8.1--h9ee0642_0' }" + 'https://depot.galaxyproject.org/singularity/seqkit:2.9.0--h9ee0642_0': + 'biocontainers/seqkit:2.9.0--h9ee0642_0' }" input: tuple val(meta), path(fastx) diff --git a/modules/nf-core/seqkit/seq/tests/main.nf.test.snap b/modules/nf-core/seqkit/seq/tests/main.nf.test.snap index e6910966322..68171935f33 100644 --- a/modules/nf-core/seqkit/seq/tests/main.nf.test.snap +++ b/modules/nf-core/seqkit/seq/tests/main.nf.test.snap @@ -11,7 +11,7 @@ ] ], "1": [ - "versions.yml:md5,34894c4efa5e10a923e78975a3d260dd" + "versions.yml:md5,eeb475e557ef671d4b58e11f82d2448e" ], "fastx": [ [ @@ -22,15 +22,15 @@ ] ], "versions": [ - "versions.yml:md5,34894c4efa5e10a923e78975a3d260dd" + "versions.yml:md5,eeb475e557ef671d4b58e11f82d2448e" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:52:18.220051903" + "timestamp": "2025-01-15T15:13:34.513457" }, "sarscov2-test_1_fastq_gz": { "content": [ @@ -44,7 +44,7 @@ ] ], "1": [ - "versions.yml:md5,34894c4efa5e10a923e78975a3d260dd" + "versions.yml:md5,eeb475e557ef671d4b58e11f82d2448e" ], "fastx": [ [ @@ -55,15 +55,15 @@ ] ], "versions": [ - "versions.yml:md5,34894c4efa5e10a923e78975a3d260dd" + "versions.yml:md5,eeb475e557ef671d4b58e11f82d2448e" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:51:55.607826581" + "timestamp": "2025-01-15T15:13:27.316329" }, "sarscov2-genome_fasta": { "content": [ @@ -77,7 +77,7 @@ ] ], "1": [ - "versions.yml:md5,34894c4efa5e10a923e78975a3d260dd" + "versions.yml:md5,eeb475e557ef671d4b58e11f82d2448e" ], "fastx": [ [ @@ -88,15 +88,15 @@ ] ], "versions": [ - "versions.yml:md5,34894c4efa5e10a923e78975a3d260dd" + "versions.yml:md5,eeb475e557ef671d4b58e11f82d2448e" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:51:27.717072933" + "timestamp": "2025-01-15T15:13:18.463038" }, "sarscov2-genome_fasta_gz": { "content": [ @@ -110,7 +110,7 @@ ] ], "1": [ - "versions.yml:md5,34894c4efa5e10a923e78975a3d260dd" + "versions.yml:md5,eeb475e557ef671d4b58e11f82d2448e" ], "fastx": [ [ @@ -121,14 +121,14 @@ ] ], "versions": [ - "versions.yml:md5,34894c4efa5e10a923e78975a3d260dd" + "versions.yml:md5,eeb475e557ef671d4b58e11f82d2448e" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:51:37.917560104" + "timestamp": "2025-01-15T15:13:22.960973" } } \ No newline at end of file diff --git a/modules/nf-core/seqkit/sliding/environment.yml b/modules/nf-core/seqkit/sliding/environment.yml index 41f3e7de43d..1f93892f485 100644 --- a/modules/nf-core/seqkit/sliding/environment.yml +++ b/modules/nf-core/seqkit/sliding/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::seqkit=2.8.1 + - bioconda::seqkit=2.9.0 diff --git a/modules/nf-core/seqkit/sliding/main.nf b/modules/nf-core/seqkit/sliding/main.nf index 8eaa0fc075b..a20c34e52d5 100644 --- a/modules/nf-core/seqkit/sliding/main.nf +++ b/modules/nf-core/seqkit/sliding/main.nf @@ -4,8 +4,8 @@ process SEQKIT_SLIDING { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/seqkit:2.8.1--h9ee0642_0': - 'biocontainers/seqkit:2.8.1--h9ee0642_0' }" + 'https://depot.galaxyproject.org/singularity/seqkit:2.9.0--h9ee0642_0': + 'biocontainers/seqkit:2.9.0--h9ee0642_0' }" input: tuple val(meta), path(fastx) diff --git a/modules/nf-core/seqkit/sliding/tests/main.nf.test.snap b/modules/nf-core/seqkit/sliding/tests/main.nf.test.snap index bceca756d29..204803b7f1b 100644 --- a/modules/nf-core/seqkit/sliding/tests/main.nf.test.snap +++ b/modules/nf-core/seqkit/sliding/tests/main.nf.test.snap @@ -11,7 +11,7 @@ ] ], "1": [ - "versions.yml:md5,57637a9043c17a7c4b7b3123e07bfe34" + "versions.yml:md5,3e991b964feeae99fc583172952f0975" ], "fastx": [ [ @@ -22,15 +22,15 @@ ] ], "versions": [ - "versions.yml:md5,57637a9043c17a7c4b7b3123e07bfe34" + "versions.yml:md5,3e991b964feeae99fc583172952f0975" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T05:33:31.037028103" + "timestamp": "2025-01-15T15:14:26.642647" }, "sarscov2 - fasta": { "content": [ @@ -44,7 +44,7 @@ ] ], "1": [ - "versions.yml:md5,57637a9043c17a7c4b7b3123e07bfe34" + "versions.yml:md5,3e991b964feeae99fc583172952f0975" ], "fastx": [ [ @@ -55,15 +55,15 @@ ] ], "versions": [ - "versions.yml:md5,57637a9043c17a7c4b7b3123e07bfe34" + "versions.yml:md5,3e991b964feeae99fc583172952f0975" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T05:33:12.639274892" + "timestamp": "2025-01-15T15:14:18.161346" }, "sarscov2 - fastq": { "content": [ @@ -77,7 +77,7 @@ ] ], "1": [ - "versions.yml:md5,57637a9043c17a7c4b7b3123e07bfe34" + "versions.yml:md5,3e991b964feeae99fc583172952f0975" ], "fastx": [ [ @@ -88,14 +88,14 @@ ] ], "versions": [ - "versions.yml:md5,57637a9043c17a7c4b7b3123e07bfe34" + "versions.yml:md5,3e991b964feeae99fc583172952f0975" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T05:33:21.481895924" + "timestamp": "2025-01-15T15:14:22.596449" } } \ No newline at end of file diff --git a/modules/nf-core/seqkit/sort/environment.yml b/modules/nf-core/seqkit/sort/environment.yml index 4f8058a9a57..160a67c08e8 100644 --- a/modules/nf-core/seqkit/sort/environment.yml +++ b/modules/nf-core/seqkit/sort/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - "bioconda::seqkit=2.8.1" + - "bioconda::seqkit=2.9.0" diff --git a/modules/nf-core/seqkit/sort/main.nf b/modules/nf-core/seqkit/sort/main.nf index c12e35acc25..19f5a1a47ac 100644 --- a/modules/nf-core/seqkit/sort/main.nf +++ b/modules/nf-core/seqkit/sort/main.nf @@ -5,8 +5,8 @@ process SEQKIT_SORT { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/seqkit:2.8.1--h9ee0642_0': - 'biocontainers/seqkit:2.8.1--h9ee0642_0' }" + 'https://depot.galaxyproject.org/singularity/seqkit:2.9.0--h9ee0642_0': + 'biocontainers/seqkit:2.9.0--h9ee0642_0' }" input: tuple val(meta), path(fastx) diff --git a/modules/nf-core/seqkit/sort/tests/main.nf.test.snap b/modules/nf-core/seqkit/sort/tests/main.nf.test.snap index 4d3a862b709..6f4de0ff5ba 100644 --- a/modules/nf-core/seqkit/sort/tests/main.nf.test.snap +++ b/modules/nf-core/seqkit/sort/tests/main.nf.test.snap @@ -11,7 +11,7 @@ ] ], "1": [ - "versions.yml:md5,04ac93fea9e0019536cfe1445ef15472" + "versions.yml:md5,c6f71fc11c6a488880e4afcc5fc166cc" ], "fastx": [ [ @@ -22,15 +22,15 @@ ] ], "versions": [ - "versions.yml:md5,04ac93fea9e0019536cfe1445ef15472" + "versions.yml:md5,c6f71fc11c6a488880e4afcc5fc166cc" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:15:12.840547526" + "timestamp": "2025-01-15T15:15:37.898144" }, "sarscov2-test_1_fastq_gz": { "content": [ @@ -44,7 +44,7 @@ ] ], "1": [ - "versions.yml:md5,04ac93fea9e0019536cfe1445ef15472" + "versions.yml:md5,c6f71fc11c6a488880e4afcc5fc166cc" ], "fastx": [ [ @@ -55,15 +55,15 @@ ] ], "versions": [ - "versions.yml:md5,04ac93fea9e0019536cfe1445ef15472" + "versions.yml:md5,c6f71fc11c6a488880e4afcc5fc166cc" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:14:53.190928013" + "timestamp": "2025-01-15T15:15:30.547117" }, "sarscov2-genome_fasta": { "content": [ @@ -77,7 +77,7 @@ ] ], "1": [ - "versions.yml:md5,04ac93fea9e0019536cfe1445ef15472" + "versions.yml:md5,c6f71fc11c6a488880e4afcc5fc166cc" ], "fastx": [ [ @@ -88,15 +88,15 @@ ] ], "versions": [ - "versions.yml:md5,04ac93fea9e0019536cfe1445ef15472" + "versions.yml:md5,c6f71fc11c6a488880e4afcc5fc166cc" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:14:29.745582222" + "timestamp": "2025-01-15T15:15:21.999443" }, "sarscov2-genome_fasta_gz": { "content": [ @@ -110,7 +110,7 @@ ] ], "1": [ - "versions.yml:md5,04ac93fea9e0019536cfe1445ef15472" + "versions.yml:md5,c6f71fc11c6a488880e4afcc5fc166cc" ], "fastx": [ [ @@ -121,14 +121,14 @@ ] ], "versions": [ - "versions.yml:md5,04ac93fea9e0019536cfe1445ef15472" + "versions.yml:md5,c6f71fc11c6a488880e4afcc5fc166cc" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T10:14:41.460601093" + "timestamp": "2025-01-15T15:15:26.228479" } } \ No newline at end of file diff --git a/modules/nf-core/seqkit/split2/environment.yml b/modules/nf-core/seqkit/split2/environment.yml index 41f3e7de43d..1f93892f485 100644 --- a/modules/nf-core/seqkit/split2/environment.yml +++ b/modules/nf-core/seqkit/split2/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::seqkit=2.8.1 + - bioconda::seqkit=2.9.0 diff --git a/modules/nf-core/seqkit/split2/main.nf b/modules/nf-core/seqkit/split2/main.nf index 7a230cd2eb1..b07adaa951c 100644 --- a/modules/nf-core/seqkit/split2/main.nf +++ b/modules/nf-core/seqkit/split2/main.nf @@ -4,8 +4,8 @@ process SEQKIT_SPLIT2 { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/seqkit:2.8.1--h9ee0642_0' : - 'biocontainers/seqkit:2.8.1--h9ee0642_0' }" + 'https://depot.galaxyproject.org/singularity/seqkit:2.9.0--h9ee0642_0' : + 'biocontainers/seqkit:2.9.0--h9ee0642_0' }" input: tuple val(meta), path(reads) @@ -20,7 +20,7 @@ process SEQKIT_SPLIT2 { script: def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" - if(meta.single_end){ + if (meta.single_end) { """ seqkit \\ split2 \\ @@ -50,4 +50,29 @@ process SEQKIT_SPLIT2 { END_VERSIONS """ } + + stub: + def prefix = task.ext.prefix ?: "${meta.id}" + if (meta.single_end) { + """ + mkdir -p ${prefix} + echo "" | gzip > ${prefix}/${reads[0]} + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + seqkit: \$(echo \$(seqkit 2>&1) | sed 's/^.*Version: //; s/ .*\$//') + END_VERSIONS + """ + } else { + """ + mkdir -p ${prefix} + echo "" | gzip > ${prefix}/${reads[0]} + echo "" | gzip > ${prefix}/${reads[1]} + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + seqkit: \$(echo \$(seqkit 2>&1) | sed 's/^.*Version: //; s/ .*\$//') + END_VERSIONS + """ + } } diff --git a/modules/nf-core/seqkit/split2/meta.yml b/modules/nf-core/seqkit/split2/meta.yml index c1e6e3def2e..e73024e7dea 100644 --- a/modules/nf-core/seqkit/split2/meta.yml +++ b/modules/nf-core/seqkit/split2/meta.yml @@ -41,5 +41,7 @@ output: pattern: "versions.yml" authors: - "@FriederikeHanssen" + - "@heuermh" maintainers: - "@FriederikeHanssen" + - "@heuermh" diff --git a/modules/nf-core/seqkit/split2/tests/main.nf.test.snap b/modules/nf-core/seqkit/split2/tests/main.nf.test.snap index 071e358541a..2ed2c16570d 100644 --- a/modules/nf-core/seqkit/split2/tests/main.nf.test.snap +++ b/modules/nf-core/seqkit/split2/tests/main.nf.test.snap @@ -17,7 +17,7 @@ ] ], "1": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ], "reads": [ [ @@ -34,15 +34,15 @@ ] ], "versions": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T05:49:27.111190403" + "timestamp": "2025-01-15T16:15:20.968231" }, "single_end - size": { "content": [ @@ -60,7 +60,7 @@ ] ], "1": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ], "reads": [ [ @@ -75,15 +75,15 @@ ] ], "versions": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T05:43:42.879258276" + "timestamp": "2025-01-15T16:15:16.296246" }, "single_end - part": { "content": [ @@ -102,7 +102,7 @@ ] ], "1": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ], "reads": [ [ @@ -118,15 +118,15 @@ ] ], "versions": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T05:43:16.85414188" + "timestamp": "2025-01-15T16:15:02.927768" }, "single_end - length": { "content": [ @@ -144,7 +144,7 @@ ] ], "1": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ], "reads": [ [ @@ -159,15 +159,15 @@ ] ], "versions": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T05:42:47.553659985" + "timestamp": "2025-01-15T16:14:49.713576" }, "single_end - size - stub": { "content": [ @@ -178,14 +178,11 @@ "id": "test", "single_end": true }, - [ - "test_1.part_001.fastq.gz:md5,ecc4b1841cd94704bba742ea4dcd48b0", - "test_1.part_002.fastq.gz:md5,b3de467f2b6ab0d14e1f6ce14932a411" - ] + "test_1.fastq.gz:md5,68b329da9893e34099c7d8ad5cb9c940" ] ], "1": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ], "reads": [ [ @@ -193,22 +190,19 @@ "id": "test", "single_end": true }, - [ - "test_1.part_001.fastq.gz:md5,ecc4b1841cd94704bba742ea4dcd48b0", - "test_1.part_002.fastq.gz:md5,b3de467f2b6ab0d14e1f6ce14932a411" - ] + "test_1.fastq.gz:md5,68b329da9893e34099c7d8ad5cb9c940" ] ], "versions": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T05:44:01.29740288" + "timestamp": "2025-01-15T16:15:25.267006" }, "single_end - part - stub": { "content": [ @@ -219,15 +213,11 @@ "id": "test", "single_end": true }, - [ - "test_1.part_001.fastq.gz:md5,b3c4d28be7ea9b960fbf1cb452adb53c", - "test_1.part_002.fastq.gz:md5,c134c70c5b70c6b3c65979448b38917e", - "test_1.part_003.fastq.gz:md5,822a40283637e2715e77d1ed0ed5bd52" - ] + "test_1.fastq.gz:md5,68b329da9893e34099c7d8ad5cb9c940" ] ], "1": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ], "reads": [ [ @@ -235,46 +225,19 @@ "id": "test", "single_end": true }, - [ - "test_1.part_001.fastq.gz:md5,b3c4d28be7ea9b960fbf1cb452adb53c", - "test_1.part_002.fastq.gz:md5,c134c70c5b70c6b3c65979448b38917e", - "test_1.part_003.fastq.gz:md5,822a40283637e2715e77d1ed0ed5bd52" - ] + "test_1.fastq.gz:md5,68b329da9893e34099c7d8ad5cb9c940" ] ], "versions": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T05:43:33.964460368" - }, - "paired_end - length - stub": { - "content": [ - { - "0": [ - - ], - "1": [ - - ], - "reads": [ - - ], - "versions": [ - - ] - } - ], - "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" - }, - "timestamp": "2024-05-08T05:42:57.687195505" + "timestamp": "2025-01-15T16:15:11.624135" }, "single_end - length - stub": { "content": [ @@ -285,14 +248,11 @@ "id": "test", "single_end": true }, - [ - "test_1.part_001.fastq.gz:md5,ffc87eb34d91d23ec9095bd8609a6a70", - "test_1.part_002.fastq.gz:md5,8d71a0abe239e05e5c57c4d27c799a1d" - ] + "test_1.fastq.gz:md5,68b329da9893e34099c7d8ad5cb9c940" ] ], "1": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ], "reads": [ [ @@ -300,24 +260,21 @@ "id": "test", "single_end": true }, - [ - "test_1.part_001.fastq.gz:md5,ffc87eb34d91d23ec9095bd8609a6a70", - "test_1.part_002.fastq.gz:md5,8d71a0abe239e05e5c57c4d27c799a1d" - ] + "test_1.fastq.gz:md5,68b329da9893e34099c7d8ad5cb9c940" ] ], "versions": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T05:43:07.15316163" + "timestamp": "2025-01-15T16:14:58.47365" }, - "paired_end - part": { + "paired_end - length": { "content": [ { "0": [ @@ -327,17 +284,15 @@ "single_end": false }, [ - "test_1.part_001.fastq.gz:md5,b3c4d28be7ea9b960fbf1cb452adb53c", - "test_1.part_002.fastq.gz:md5,c134c70c5b70c6b3c65979448b38917e", - "test_1.part_003.fastq.gz:md5,822a40283637e2715e77d1ed0ed5bd52", - "test_2.part_001.fastq.gz:md5,13d14d69744bd93c8c51873b529bf714", - "test_2.part_002.fastq.gz:md5,5f5a78d78f312164a1159c62d65c15f1", - "test_2.part_003.fastq.gz:md5,48bcbceb485b73bcf1f198e252b016d8" + "test_1.part_001.fastq.gz:md5,ffc87eb34d91d23ec9095bd8609a6a70", + "test_1.part_002.fastq.gz:md5,8d71a0abe239e05e5c57c4d27c799a1d", + "test_2.part_001.fastq.gz:md5,77b9076f82a762711582584342bde5a1", + "test_2.part_002.fastq.gz:md5,33bb6e3edc759baa7ba6580da36def48" ] ] ], "1": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ], "reads": [ [ @@ -346,27 +301,25 @@ "single_end": false }, [ - "test_1.part_001.fastq.gz:md5,b3c4d28be7ea9b960fbf1cb452adb53c", - "test_1.part_002.fastq.gz:md5,c134c70c5b70c6b3c65979448b38917e", - "test_1.part_003.fastq.gz:md5,822a40283637e2715e77d1ed0ed5bd52", - "test_2.part_001.fastq.gz:md5,13d14d69744bd93c8c51873b529bf714", - "test_2.part_002.fastq.gz:md5,5f5a78d78f312164a1159c62d65c15f1", - "test_2.part_003.fastq.gz:md5,48bcbceb485b73bcf1f198e252b016d8" + "test_1.part_001.fastq.gz:md5,ffc87eb34d91d23ec9095bd8609a6a70", + "test_1.part_002.fastq.gz:md5,8d71a0abe239e05e5c57c4d27c799a1d", + "test_2.part_001.fastq.gz:md5,77b9076f82a762711582584342bde5a1", + "test_2.part_002.fastq.gz:md5,33bb6e3edc759baa7ba6580da36def48" ] ] ], "versions": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T05:48:43.715062381" + "timestamp": "2025-01-15T16:14:54.230006" }, - "paired_end - length": { + "paired_end - part": { "content": [ { "0": [ @@ -376,15 +329,17 @@ "single_end": false }, [ - "test_1.part_001.fastq.gz:md5,ffc87eb34d91d23ec9095bd8609a6a70", - "test_1.part_002.fastq.gz:md5,8d71a0abe239e05e5c57c4d27c799a1d", - "test_2.part_001.fastq.gz:md5,77b9076f82a762711582584342bde5a1", - "test_2.part_002.fastq.gz:md5,33bb6e3edc759baa7ba6580da36def48" + "test_1.part_001.fastq.gz:md5,b3c4d28be7ea9b960fbf1cb452adb53c", + "test_1.part_002.fastq.gz:md5,c134c70c5b70c6b3c65979448b38917e", + "test_1.part_003.fastq.gz:md5,822a40283637e2715e77d1ed0ed5bd52", + "test_2.part_001.fastq.gz:md5,13d14d69744bd93c8c51873b529bf714", + "test_2.part_002.fastq.gz:md5,5f5a78d78f312164a1159c62d65c15f1", + "test_2.part_003.fastq.gz:md5,48bcbceb485b73bcf1f198e252b016d8" ] ] ], "1": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ], "reads": [ [ @@ -393,22 +348,24 @@ "single_end": false }, [ - "test_1.part_001.fastq.gz:md5,ffc87eb34d91d23ec9095bd8609a6a70", - "test_1.part_002.fastq.gz:md5,8d71a0abe239e05e5c57c4d27c799a1d", - "test_2.part_001.fastq.gz:md5,77b9076f82a762711582584342bde5a1", - "test_2.part_002.fastq.gz:md5,33bb6e3edc759baa7ba6580da36def48" + "test_1.part_001.fastq.gz:md5,b3c4d28be7ea9b960fbf1cb452adb53c", + "test_1.part_002.fastq.gz:md5,c134c70c5b70c6b3c65979448b38917e", + "test_1.part_003.fastq.gz:md5,822a40283637e2715e77d1ed0ed5bd52", + "test_2.part_001.fastq.gz:md5,13d14d69744bd93c8c51873b529bf714", + "test_2.part_002.fastq.gz:md5,5f5a78d78f312164a1159c62d65c15f1", + "test_2.part_003.fastq.gz:md5,48bcbceb485b73bcf1f198e252b016d8" ] ] ], "versions": [ - "versions.yml:md5,7725bee2f34895f4c1678afacf87ed4f" + "versions.yml:md5,f5d878e7143d05609ce5bb5974126990" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T05:46:21.786837526" + "timestamp": "2025-01-15T16:15:07.43572" } } \ No newline at end of file diff --git a/modules/nf-core/seqkit/stats/environment.yml b/modules/nf-core/seqkit/stats/environment.yml index 41f3e7de43d..1f93892f485 100644 --- a/modules/nf-core/seqkit/stats/environment.yml +++ b/modules/nf-core/seqkit/stats/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::seqkit=2.8.1 + - bioconda::seqkit=2.9.0 diff --git a/modules/nf-core/seqkit/stats/main.nf b/modules/nf-core/seqkit/stats/main.nf index 117c6052b83..57d95cfdc06 100644 --- a/modules/nf-core/seqkit/stats/main.nf +++ b/modules/nf-core/seqkit/stats/main.nf @@ -4,8 +4,8 @@ process SEQKIT_STATS { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/seqkit:2.8.1--h9ee0642_0' : - 'biocontainers/seqkit:2.8.1--h9ee0642_0' }" + 'https://depot.galaxyproject.org/singularity/seqkit:2.9.0--h9ee0642_0' : + 'biocontainers/seqkit:2.9.0--h9ee0642_0' }" input: tuple val(meta), path(reads) @@ -31,4 +31,15 @@ process SEQKIT_STATS { seqkit: \$( seqkit version | sed 's/seqkit v//' ) END_VERSIONS """ + + stub: + def prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.tsv + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + seqkit: \$( seqkit version | sed 's/seqkit v//' ) + END_VERSIONS + """ } diff --git a/modules/nf-core/seqkit/stats/meta.yml b/modules/nf-core/seqkit/stats/meta.yml index 797712b5bb9..418aa81e902 100644 --- a/modules/nf-core/seqkit/stats/meta.yml +++ b/modules/nf-core/seqkit/stats/meta.yml @@ -44,5 +44,7 @@ output: pattern: "versions.yml" authors: - "@Midnighter" + - "@heuermh" maintainers: - "@Midnighter" + - "@heuermh" diff --git a/modules/nf-core/seqkit/stats/tests/main.nf.test.snap b/modules/nf-core/seqkit/stats/tests/main.nf.test.snap index 43aa9fe2a72..6ce591131fb 100644 --- a/modules/nf-core/seqkit/stats/tests/main.nf.test.snap +++ b/modules/nf-core/seqkit/stats/tests/main.nf.test.snap @@ -8,11 +8,11 @@ "id": "test", "single_end": true }, - "test.tsv:md5,49ea41204974d82fb9bbb30572485ccb" + "test.tsv:md5,14f97a9e0414998854ead651e0e69449" ] ], "1": [ - "versions.yml:md5,e5810dac4e10040b1a74b8672a829734" + "versions.yml:md5,40bf07b7fd9e00784395ff7746ec8492" ], "stats": [ [ @@ -20,19 +20,19 @@ "id": "test", "single_end": true }, - "test.tsv:md5,49ea41204974d82fb9bbb30572485ccb" + "test.tsv:md5,14f97a9e0414998854ead651e0e69449" ] ], "versions": [ - "versions.yml:md5,e5810dac4e10040b1a74b8672a829734" + "versions.yml:md5,40bf07b7fd9e00784395ff7746ec8492" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:35:18.621881722" + "timestamp": "2025-01-15T15:35:09.132477" }, "genome_fasta": { "content": [ @@ -43,11 +43,11 @@ "id": "test", "single_end": false }, - "test.tsv:md5,af2521fa0c7e1a0683e60df6292429de" + "test.tsv:md5,82b33df8ec2515560b80c3d0bc64c898" ] ], "1": [ - "versions.yml:md5,e5810dac4e10040b1a74b8672a829734" + "versions.yml:md5,40bf07b7fd9e00784395ff7746ec8492" ], "stats": [ [ @@ -55,19 +55,19 @@ "id": "test", "single_end": false }, - "test.tsv:md5,af2521fa0c7e1a0683e60df6292429de" + "test.tsv:md5,82b33df8ec2515560b80c3d0bc64c898" ] ], "versions": [ - "versions.yml:md5,e5810dac4e10040b1a74b8672a829734" + "versions.yml:md5,40bf07b7fd9e00784395ff7746ec8492" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:35:28.193047869" + "timestamp": "2025-01-15T15:35:13.678978" }, "transcriptome_fasta": { "content": [ @@ -78,11 +78,11 @@ "id": "test", "single_end": false }, - "test.tsv:md5,48d5664c3214880f3509226cb839eb17" + "test.tsv:md5,eef67c2e2f225391836d59d5b0d6c3b7" ] ], "1": [ - "versions.yml:md5,e5810dac4e10040b1a74b8672a829734" + "versions.yml:md5,40bf07b7fd9e00784395ff7746ec8492" ], "stats": [ [ @@ -90,19 +90,19 @@ "id": "test", "single_end": false }, - "test.tsv:md5,48d5664c3214880f3509226cb839eb17" + "test.tsv:md5,eef67c2e2f225391836d59d5b0d6c3b7" ] ], "versions": [ - "versions.yml:md5,e5810dac4e10040b1a74b8672a829734" + "versions.yml:md5,40bf07b7fd9e00784395ff7746ec8492" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:35:39.129387891" + "timestamp": "2025-01-15T15:35:18.204844" }, "single_end": { "content": [ @@ -113,11 +113,11 @@ "id": "test", "single_end": true }, - "test.tsv:md5,97eb700f7e607dba8371e82d5de8a1a2" + "test.tsv:md5,f172827a8608b646559cc39c6ca05085" ] ], "1": [ - "versions.yml:md5,e5810dac4e10040b1a74b8672a829734" + "versions.yml:md5,40bf07b7fd9e00784395ff7746ec8492" ], "stats": [ [ @@ -125,19 +125,19 @@ "id": "test", "single_end": true }, - "test.tsv:md5,97eb700f7e607dba8371e82d5de8a1a2" + "test.tsv:md5,f172827a8608b646559cc39c6ca05085" ] ], "versions": [ - "versions.yml:md5,e5810dac4e10040b1a74b8672a829734" + "versions.yml:md5,40bf07b7fd9e00784395ff7746ec8492" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:34:57.889856349" + "timestamp": "2025-01-15T15:35:00.240123" }, "paired_end": { "content": [ @@ -148,11 +148,11 @@ "id": "test", "single_end": false }, - "test.tsv:md5,97eb700f7e607dba8371e82d5de8a1a2" + "test.tsv:md5,f172827a8608b646559cc39c6ca05085" ] ], "1": [ - "versions.yml:md5,e5810dac4e10040b1a74b8672a829734" + "versions.yml:md5,40bf07b7fd9e00784395ff7746ec8492" ], "stats": [ [ @@ -160,19 +160,19 @@ "id": "test", "single_end": false }, - "test.tsv:md5,97eb700f7e607dba8371e82d5de8a1a2" + "test.tsv:md5,f172827a8608b646559cc39c6ca05085" ] ], "versions": [ - "versions.yml:md5,e5810dac4e10040b1a74b8672a829734" + "versions.yml:md5,40bf07b7fd9e00784395ff7746ec8492" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:35:09.114729727" + "timestamp": "2025-01-15T15:35:04.668822" }, "single_end - stub": { "content": [ @@ -183,11 +183,11 @@ "id": "test", "single_end": true }, - "test.tsv:md5,97eb700f7e607dba8371e82d5de8a1a2" + "test.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], "1": [ - "versions.yml:md5,e5810dac4e10040b1a74b8672a829734" + "versions.yml:md5,40bf07b7fd9e00784395ff7746ec8492" ], "stats": [ [ @@ -195,18 +195,18 @@ "id": "test", "single_end": true }, - "test.tsv:md5,97eb700f7e607dba8371e82d5de8a1a2" + "test.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], "versions": [ - "versions.yml:md5,e5810dac4e10040b1a74b8672a829734" + "versions.yml:md5,40bf07b7fd9e00784395ff7746ec8492" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:35:49.267660809" + "timestamp": "2025-01-15T15:35:22.85489" } } \ No newline at end of file diff --git a/modules/nf-core/seqkit/tab2fx/environment.yml b/modules/nf-core/seqkit/tab2fx/environment.yml index 41f3e7de43d..1f93892f485 100644 --- a/modules/nf-core/seqkit/tab2fx/environment.yml +++ b/modules/nf-core/seqkit/tab2fx/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::seqkit=2.8.1 + - bioconda::seqkit=2.9.0 diff --git a/modules/nf-core/seqkit/tab2fx/main.nf b/modules/nf-core/seqkit/tab2fx/main.nf index 9532cfc5918..9cdee7d30ba 100644 --- a/modules/nf-core/seqkit/tab2fx/main.nf +++ b/modules/nf-core/seqkit/tab2fx/main.nf @@ -4,8 +4,8 @@ process SEQKIT_TAB2FX { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/seqkit:2.8.1--h9ee0642_0' : - 'biocontainers/seqkit:2.8.1--h9ee0642_0' }" + 'https://depot.galaxyproject.org/singularity/seqkit:2.9.0--h9ee0642_0' : + 'biocontainers/seqkit:2.9.0--h9ee0642_0' }" input: tuple val(meta), path(text) @@ -34,4 +34,16 @@ process SEQKIT_TAB2FX { seqkit: \$( seqkit | sed '3!d; s/Version: //' ) END_VERSIONS """ + + stub: + def prefix = task.ext.prefix ?: "${meta.id}" + def suffix = task.ext.suffix ?: "fa.zst" + """ + touch ${prefix}.${suffix} + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + seqkit: \$( seqkit | sed '3!d; s/Version: //' ) + END_VERSIONS + """ } diff --git a/modules/nf-core/seqkit/tab2fx/tests/main.nf.test.snap b/modules/nf-core/seqkit/tab2fx/tests/main.nf.test.snap index 857a2b2e953..91c6fbbb5c2 100644 --- a/modules/nf-core/seqkit/tab2fx/tests/main.nf.test.snap +++ b/modules/nf-core/seqkit/tab2fx/tests/main.nf.test.snap @@ -7,30 +7,30 @@ { "id": "test" }, - "test.fa.zst:md5,04d45a85c10933605cb5a289552c83a0" + "test.fa.zst:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], "1": [ - "versions.yml:md5,60fb327ac9a1ed20945fbb049faa7e36" + "versions.yml:md5,d01878090b875a05b111ee8a68405491" ], "fastx": [ [ { "id": "test" }, - "test.fa.zst:md5,04d45a85c10933605cb5a289552c83a0" + "test.fa.zst:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], "versions": [ - "versions.yml:md5,60fb327ac9a1ed20945fbb049faa7e36" + "versions.yml:md5,d01878090b875a05b111ee8a68405491" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:24:24.025365917" + "timestamp": "2025-01-15T12:20:30.19388" }, "fastq_gz": { "content": [ @@ -44,7 +44,7 @@ ] ], "1": [ - "versions.yml:md5,60fb327ac9a1ed20945fbb049faa7e36" + "versions.yml:md5,d01878090b875a05b111ee8a68405491" ], "fastx": [ [ @@ -55,15 +55,15 @@ ] ], "versions": [ - "versions.yml:md5,60fb327ac9a1ed20945fbb049faa7e36" + "versions.yml:md5,d01878090b875a05b111ee8a68405491" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:24:12.779036251" + "timestamp": "2025-01-15T12:20:25.318142" }, "fasta_gz": { "content": [ @@ -77,7 +77,7 @@ ] ], "1": [ - "versions.yml:md5,60fb327ac9a1ed20945fbb049faa7e36" + "versions.yml:md5,d01878090b875a05b111ee8a68405491" ], "fastx": [ [ @@ -88,15 +88,15 @@ ] ], "versions": [ - "versions.yml:md5,60fb327ac9a1ed20945fbb049faa7e36" + "versions.yml:md5,d01878090b875a05b111ee8a68405491" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:24:00.497912668" + "timestamp": "2025-01-15T12:20:19.111781" }, "fasta": { "content": [ @@ -110,7 +110,7 @@ ] ], "1": [ - "versions.yml:md5,60fb327ac9a1ed20945fbb049faa7e36" + "versions.yml:md5,d01878090b875a05b111ee8a68405491" ], "fastx": [ [ @@ -121,15 +121,15 @@ ] ], "versions": [ - "versions.yml:md5,60fb327ac9a1ed20945fbb049faa7e36" + "versions.yml:md5,d01878090b875a05b111ee8a68405491" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:23:31.940090506" + "timestamp": "2025-01-15T12:20:06.405339" }, "fastq": { "content": [ @@ -143,7 +143,7 @@ ] ], "1": [ - "versions.yml:md5,60fb327ac9a1ed20945fbb049faa7e36" + "versions.yml:md5,d01878090b875a05b111ee8a68405491" ], "fastx": [ [ @@ -154,14 +154,14 @@ ] ], "versions": [ - "versions.yml:md5,60fb327ac9a1ed20945fbb049faa7e36" + "versions.yml:md5,d01878090b875a05b111ee8a68405491" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:23:46.059347765" + "timestamp": "2025-01-15T12:20:12.813847" } } \ No newline at end of file diff --git a/modules/nf-core/seqkit/translate/environment.yml b/modules/nf-core/seqkit/translate/environment.yml index 95584e3c48b..f917ae67580 100644 --- a/modules/nf-core/seqkit/translate/environment.yml +++ b/modules/nf-core/seqkit/translate/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - "bioconda::seqkit=2.8.2" + - "bioconda::seqkit=2.9.0" diff --git a/modules/nf-core/seqkit/translate/main.nf b/modules/nf-core/seqkit/translate/main.nf index 2b6a60634f2..12e8c4a811f 100644 --- a/modules/nf-core/seqkit/translate/main.nf +++ b/modules/nf-core/seqkit/translate/main.nf @@ -4,8 +4,8 @@ process SEQKIT_TRANSLATE { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/seqkit:2.8.2--h9ee0642_1': - 'biocontainers/seqkit:2.8.2--h9ee0642_1' }" + 'https://depot.galaxyproject.org/singularity/seqkit:2.9.0--h9ee0642_0': + 'biocontainers/seqkit:2.9.0--h9ee0642_0' }" input: tuple val(meta), path(fastx) diff --git a/modules/nf-core/seqkit/translate/tests/main.nf.test.snap b/modules/nf-core/seqkit/translate/tests/main.nf.test.snap index 68a27185c5f..4d9609137d1 100644 --- a/modules/nf-core/seqkit/translate/tests/main.nf.test.snap +++ b/modules/nf-core/seqkit/translate/tests/main.nf.test.snap @@ -11,7 +11,7 @@ ] ], "1": [ - "versions.yml:md5,bf64d8d652a9b313153c953eab761f33" + "versions.yml:md5,b69861a1b516ab124aa52e238ef3755c" ], "fastx": [ [ @@ -22,15 +22,15 @@ ] ], "versions": [ - "versions.yml:md5,bf64d8d652a9b313153c953eab761f33" + "versions.yml:md5,b69861a1b516ab124aa52e238ef3755c" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-09-27T14:11:33.440888698" + "timestamp": "2025-01-15T15:20:41.567935" }, "sarscov2 - bam - stub": { "content": [ @@ -45,7 +45,7 @@ ] ], "1": [ - "versions.yml:md5,bf64d8d652a9b313153c953eab761f33" + "versions.yml:md5,b69861a1b516ab124aa52e238ef3755c" ], "fastx": [ [ @@ -57,15 +57,15 @@ ] ], "versions": [ - "versions.yml:md5,bf64d8d652a9b313153c953eab761f33" + "versions.yml:md5,b69861a1b516ab124aa52e238ef3755c" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-09-20T15:24:19.344543763" + "timestamp": "2025-01-15T15:20:58.701122" }, "sarscov2-genome_fasta-stub": { "content": [ @@ -79,7 +79,7 @@ ] ], "1": [ - "versions.yml:md5,bf64d8d652a9b313153c953eab761f33" + "versions.yml:md5,b69861a1b516ab124aa52e238ef3755c" ], "fastx": [ [ @@ -90,15 +90,15 @@ ] ], "versions": [ - "versions.yml:md5,bf64d8d652a9b313153c953eab761f33" + "versions.yml:md5,b69861a1b516ab124aa52e238ef3755c" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-09-27T13:58:35.061712261" + "timestamp": "2025-01-15T15:21:05.989858" }, "sarscov2 - transcriptome_fasta": { "content": [ @@ -112,7 +112,7 @@ ] ], "1": [ - "versions.yml:md5,bf64d8d652a9b313153c953eab761f33" + "versions.yml:md5,b69861a1b516ab124aa52e238ef3755c" ], "fastx": [ [ @@ -123,15 +123,15 @@ ] ], "versions": [ - "versions.yml:md5,bf64d8d652a9b313153c953eab761f33" + "versions.yml:md5,b69861a1b516ab124aa52e238ef3755c" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-09-27T14:12:02.993246822" + "timestamp": "2025-01-15T15:20:54.543009" }, "sarscov2 - genome_fasta_gz": { "content": [ @@ -145,7 +145,7 @@ ] ], "1": [ - "versions.yml:md5,bf64d8d652a9b313153c953eab761f33" + "versions.yml:md5,b69861a1b516ab124aa52e238ef3755c" ], "fastx": [ [ @@ -156,15 +156,15 @@ ] ], "versions": [ - "versions.yml:md5,bf64d8d652a9b313153c953eab761f33" + "versions.yml:md5,b69861a1b516ab124aa52e238ef3755c" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-09-27T14:11:43.884810694" + "timestamp": "2025-01-15T15:20:45.963348" }, "sarscov2 - test_1_fastq_gz": { "content": [ @@ -178,7 +178,7 @@ ] ], "1": [ - "versions.yml:md5,bf64d8d652a9b313153c953eab761f33" + "versions.yml:md5,b69861a1b516ab124aa52e238ef3755c" ], "fastx": [ [ @@ -189,14 +189,14 @@ ] ], "versions": [ - "versions.yml:md5,bf64d8d652a9b313153c953eab761f33" + "versions.yml:md5,b69861a1b516ab124aa52e238ef3755c" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-09-27T14:11:53.792592007" + "timestamp": "2025-01-15T15:20:50.35833" } } \ No newline at end of file diff --git a/modules/nf-core/shinyngs/app/environment.yml b/modules/nf-core/shinyngs/app/environment.yml index 89b523b2df8..f98b8bf5493 100644 --- a/modules/nf-core/shinyngs/app/environment.yml +++ b/modules/nf-core/shinyngs/app/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::r-shinyngs=2.0.0 + - bioconda::r-shinyngs=2.1.0 diff --git a/modules/nf-core/shinyngs/app/main.nf b/modules/nf-core/shinyngs/app/main.nf index 39b2db467a6..a08265bfc3c 100644 --- a/modules/nf-core/shinyngs/app/main.nf +++ b/modules/nf-core/shinyngs/app/main.nf @@ -15,8 +15,8 @@ process SHINYNGS_APP { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/r-shinyngs:2.0.0--r43hdfd78af_0' : - 'biocontainers/r-shinyngs:2.0.0--r43hdfd78af_0' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/97/971684ed03cda2689eea7db9e7f2ee74d079ddd74e3a3baac31e958eea6feb0e/data' : + 'community.wave.seqera.io/library/r-shinyngs:2.1.0--09e258eb60cb225f' }" input: tuple val(meta), path(sample), path(feature_meta), path(assay_files) // Experiment-level info diff --git a/modules/nf-core/shinyngs/app/tests/main.nf.test.snap b/modules/nf-core/shinyngs/app/tests/main.nf.test.snap index 434d540c1d8..256a4371d0b 100644 --- a/modules/nf-core/shinyngs/app/tests/main.nf.test.snap +++ b/modules/nf-core/shinyngs/app/tests/main.nf.test.snap @@ -4,41 +4,41 @@ "data.rds", "app.R:md5,d41d8cd98f00b204e9800998ecf8427e", [ - "versions.yml:md5,a6c3af4b2fd261b4049c92449ea6bb4d" + "versions.yml:md5,8e8f77fd5f860fb3e8123f266c0c450b" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-06-25T09:43:49.880332" + "timestamp": "2025-01-16T20:12:57.965636745" }, "mouse - multi matrix": { "content": [ "data.rds", "app.R:md5,bedcfc45b6cdcc2b8fe3627987e2b17a", [ - "versions.yml:md5,a6c3af4b2fd261b4049c92449ea6bb4d" + "versions.yml:md5,8e8f77fd5f860fb3e8123f266c0c450b" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-06-25T09:43:15.455356" + "timestamp": "2025-01-16T20:12:25.659843541" }, "mouse - single matrix": { "content": [ "data.rds", "app.R:md5,bedcfc45b6cdcc2b8fe3627987e2b17a", [ - "versions.yml:md5,a6c3af4b2fd261b4049c92449ea6bb4d" + "versions.yml:md5,8e8f77fd5f860fb3e8123f266c0c450b" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-06-25T09:43:35.309081" + "timestamp": "2025-01-16T20:12:44.933479752" } } \ No newline at end of file diff --git a/modules/nf-core/shinyngs/staticdifferential/environment.yml b/modules/nf-core/shinyngs/staticdifferential/environment.yml index 89b523b2df8..f98b8bf5493 100644 --- a/modules/nf-core/shinyngs/staticdifferential/environment.yml +++ b/modules/nf-core/shinyngs/staticdifferential/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::r-shinyngs=2.0.0 + - bioconda::r-shinyngs=2.1.0 diff --git a/modules/nf-core/shinyngs/staticdifferential/main.nf b/modules/nf-core/shinyngs/staticdifferential/main.nf index 40582d66536..ddf392b5408 100644 --- a/modules/nf-core/shinyngs/staticdifferential/main.nf +++ b/modules/nf-core/shinyngs/staticdifferential/main.nf @@ -4,8 +4,8 @@ process SHINYNGS_STATICDIFFERENTIAL { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/r-shinyngs:2.0.0--r43hdfd78af_0' : - 'biocontainers/r-shinyngs:2.0.0--r43hdfd78af_0' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/97/971684ed03cda2689eea7db9e7f2ee74d079ddd74e3a3baac31e958eea6feb0e/data' : + 'community.wave.seqera.io/library/r-shinyngs:2.1.0--09e258eb60cb225f' }" input: tuple val(meta), path(differential_result) // Differential info: contrast and differential stats @@ -33,7 +33,19 @@ process SHINYNGS_STATICDIFFERENTIAL { cat <<-END_VERSIONS > versions.yml "${task.process}": - r-base: \$(echo \$(R --version 2>&1) | sed 's/^.*R version //; s/ .*\$//') + r-shinyngs: \$(Rscript -e "library(shinyngs); cat(as.character(packageVersion('shinyngs')))") + END_VERSIONS + """ + + stub: + def prefix = task.ext.prefix ?: meta.id + """ + mkdir -p $prefix/png && mkdir $prefix/html + touch $prefix/png/volcano.png + touch $prefix/html/volcano.html + + cat <<-END_VERSIONS > versions.yml + "${task.process}": r-shinyngs: \$(Rscript -e "library(shinyngs); cat(as.character(packageVersion('shinyngs')))") END_VERSIONS """ diff --git a/modules/nf-core/shinyngs/staticdifferential/tests/main.nf.test b/modules/nf-core/shinyngs/staticdifferential/tests/main.nf.test new file mode 100644 index 00000000000..1492a0352a7 --- /dev/null +++ b/modules/nf-core/shinyngs/staticdifferential/tests/main.nf.test @@ -0,0 +1,127 @@ +nextflow_process { + + name "Test Process SHINYNGS_STATICDIFFERENTIAL" + script "../main.nf" + process "SHINYNGS_STATICDIFFERENTIAL" + config "./nextflow.config" + + tag "modules" + tag "modules_nfcore" + tag "shinyngs" + tag "shinyngs/staticdifferential" + + test("test") { + + when { + params{ + features_id_col = "gene_id" + reference = "mCherry" + target = "hND6" + differential_fc_column = "log2FoldChange" + differential_qval_column = "padj" + differential_feature_id_column = "gene_id" + differential_min_fold_change = 2.0 + differential_max_qval = 0.05 + differential_foldchanges_logged = true + differential_palette_name = "Set1" + module_args = [ + "--feature_id_col \"${params.features_id_col}\"", + "--reference_level \"${params.reference}\"", + "--treatment_level \"${params.target}\"", + "--fold_change_col \"${params.differential_fc_column}\"", + "--p_value_column \"${params.differential_qval_column}\"", + "--diff_feature_id_col \"${params.differential_feature_id_column}\"", + "--fold_change_threshold \"${params.differential_min_fold_change}\"", + "--p_value_threshold \"${params.differential_max_qval}\"", + "--unlog_foldchanges \"${params.differential_foldchanges_logged}\"", + "--palette_name \"${params.differential_palette_name}\"" + ].join(' ').trim() + } + process { + """ + input[0] = [ + ['id':'treatment_mCherry_hND6_', 'variable':'treatment', 'reference':'mCherry', 'target':'hND6', 'blocking':''], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/treatment_mCherry_hND6_.deseq2.results.tsv", checkIfExists:true) + ] + input[1] = [['id':'SRP254919'], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.samplesheet.sample_metadata.tsv", checkIfExists:true), + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/Mus_musculus.anno.tsv", checkIfExists:true), + [ + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.salmon.merged.gene_counts.top1000cov.assay.tsv", checkIfExists:true), + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/all.normalised_counts.tsv", checkIfExists:true), + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/all.vst.tsv", checkIfExists:true) + ] + ] + """ + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot( + file(process.out.volcanos_png[0][1]).name, //assert unstable file + process.out.volcanos_html, + process.out.versions + ).match() + } + ) + } + } + + test("stub") { + + options "-stub" + + when { + params{ + features_id_col = "gene_id" + reference = "mCherry" + target = "hND6" + differential_fc_column = "log2FoldChange" + differential_qval_column = "padj" + differential_feature_id_column = "gene_id" + differential_min_fold_change = 2.0 + differential_max_qval = 0.05 + differential_foldchanges_logged = true + differential_palette_name = "Set1" + module_args = [ + "--feature_id_col \"${params.features_id_col}\"", + "--reference_level \"${params.reference}\"", + "--treatment_level \"${params.target}\"", + "--fold_change_col \"${params.differential_fc_column}\"", + "--p_value_column \"${params.differential_qval_column}\"", + "--diff_feature_id_col \"${params.differential_feature_id_column}\"", + "--fold_change_threshold \"${params.differential_min_fold_change}\"", + "--p_value_threshold \"${params.differential_max_qval}\"", + "--unlog_foldchanges \"${params.differential_foldchanges_logged}\"", + "--palette_name \"${params.differential_palette_name}\"" + ].join(' ').trim() + } + process { + """ + input[0] = [ + ['id':'treatment_mCherry_hND6_', 'variable':'treatment', 'reference':'mCherry', 'target':'hND6', 'blocking':''], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/treatment_mCherry_hND6_.deseq2.results.tsv", checkIfExists:true) + ] + input[1] = [['id':'SRP254919'], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.samplesheet.sample_metadata.tsv", checkIfExists:true), + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/Mus_musculus.anno.tsv", checkIfExists:true), + [ + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.salmon.merged.gene_counts.top1000cov.assay.tsv", checkIfExists:true), + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/all.normalised_counts.tsv", checkIfExists:true), + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/all.vst.tsv", checkIfExists:true) + ] + ] + """ + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/nf-core/shinyngs/staticdifferential/tests/main.nf.test.snap b/modules/nf-core/shinyngs/staticdifferential/tests/main.nf.test.snap new file mode 100644 index 00000000000..32f99d34b46 --- /dev/null +++ b/modules/nf-core/shinyngs/staticdifferential/tests/main.nf.test.snap @@ -0,0 +1,83 @@ +{ + "test": { + "content": [ + "volcano.png", + [ + + ], + [ + "versions.yml:md5,f2e3d411d3d82796173bcce72c30c20e" + ] + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-17T15:06:11.529495204" + }, + "stub": { + "content": [ + { + "0": [ + [ + { + "id": "treatment_mCherry_hND6_", + "variable": "treatment", + "reference": "mCherry", + "target": "hND6", + "blocking": "" + }, + "volcano.png:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + [ + { + "id": "treatment_mCherry_hND6_", + "variable": "treatment", + "reference": "mCherry", + "target": "hND6", + "blocking": "" + }, + "volcano.html:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "2": [ + "versions.yml:md5,f2e3d411d3d82796173bcce72c30c20e" + ], + "versions": [ + "versions.yml:md5,f2e3d411d3d82796173bcce72c30c20e" + ], + "volcanos_html": [ + [ + { + "id": "treatment_mCherry_hND6_", + "variable": "treatment", + "reference": "mCherry", + "target": "hND6", + "blocking": "" + }, + "volcano.html:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "volcanos_png": [ + [ + { + "id": "treatment_mCherry_hND6_", + "variable": "treatment", + "reference": "mCherry", + "target": "hND6", + "blocking": "" + }, + "volcano.png:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-17T11:10:38.36289072" + } +} \ No newline at end of file diff --git a/modules/nf-core/shinyngs/staticdifferential/tests/nextflow.config b/modules/nf-core/shinyngs/staticdifferential/tests/nextflow.config new file mode 100644 index 00000000000..ad3d36ef5c9 --- /dev/null +++ b/modules/nf-core/shinyngs/staticdifferential/tests/nextflow.config @@ -0,0 +1,3 @@ +process { + ext.args = params.module_args +} diff --git a/modules/nf-core/shinyngs/staticexploratory/environment.yml b/modules/nf-core/shinyngs/staticexploratory/environment.yml index 89b523b2df8..f98b8bf5493 100644 --- a/modules/nf-core/shinyngs/staticexploratory/environment.yml +++ b/modules/nf-core/shinyngs/staticexploratory/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::r-shinyngs=2.0.0 + - bioconda::r-shinyngs=2.1.0 diff --git a/modules/nf-core/shinyngs/staticexploratory/main.nf b/modules/nf-core/shinyngs/staticexploratory/main.nf index 379a2b11a86..7eb2bc24ce0 100644 --- a/modules/nf-core/shinyngs/staticexploratory/main.nf +++ b/modules/nf-core/shinyngs/staticexploratory/main.nf @@ -4,8 +4,8 @@ process SHINYNGS_STATICEXPLORATORY { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/r-shinyngs:2.0.0--r43hdfd78af_0' : - 'biocontainers/r-shinyngs:2.0.0--r43hdfd78af_0' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/97/971684ed03cda2689eea7db9e7f2ee74d079ddd74e3a3baac31e958eea6feb0e/data' : + 'community.wave.seqera.io/library/r-shinyngs:2.1.0--09e258eb60cb225f' }" input: tuple val(meta), path(sample), path(feature_meta), path(assay_files) diff --git a/modules/nf-core/shinyngs/staticexploratory/tests/main.nf.test.snap b/modules/nf-core/shinyngs/staticexploratory/tests/main.nf.test.snap index 289428ef634..9750ee964c3 100644 --- a/modules/nf-core/shinyngs/staticexploratory/tests/main.nf.test.snap +++ b/modules/nf-core/shinyngs/staticexploratory/tests/main.nf.test.snap @@ -8,14 +8,14 @@ "pca3d.png", "sample_dendrogram.png", [ - "versions.yml:md5,e04025d7790ddfa09ba5bd719cfba8c7" + "versions.yml:md5,6a4a415b0aad7a9878674ff5102f31e8" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-06-25T10:24:53.456056" + "timestamp": "2025-01-16T20:14:07.293636493" }, "mouse - defaults": { "content": [ @@ -26,14 +26,14 @@ "pca3d.png", "sample_dendrogram.png", [ - "versions.yml:md5,e04025d7790ddfa09ba5bd719cfba8c7" + "versions.yml:md5,6a4a415b0aad7a9878674ff5102f31e8" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-06-25T10:24:39.111271" + "timestamp": "2025-01-16T20:13:54.495198737" }, "mouse - specify log": { "content": [ @@ -44,14 +44,14 @@ "pca3d.png", "sample_dendrogram.png", [ - "versions.yml:md5,e04025d7790ddfa09ba5bd719cfba8c7" + "versions.yml:md5,6a4a415b0aad7a9878674ff5102f31e8" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-06-25T10:25:14.646472" + "timestamp": "2025-01-16T20:14:27.861376263" }, "mouse - html": { "content": [ @@ -67,13 +67,13 @@ false, false, [ - "versions.yml:md5,e04025d7790ddfa09ba5bd719cfba8c7" + "versions.yml:md5,6a4a415b0aad7a9878674ff5102f31e8" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-06-25T10:25:38.256352" + "timestamp": "2025-01-16T20:14:50.517212318" } } \ No newline at end of file diff --git a/modules/nf-core/shinyngs/validatefomcomponents/environment.yml b/modules/nf-core/shinyngs/validatefomcomponents/environment.yml index 89b523b2df8..f98b8bf5493 100644 --- a/modules/nf-core/shinyngs/validatefomcomponents/environment.yml +++ b/modules/nf-core/shinyngs/validatefomcomponents/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::r-shinyngs=2.0.0 + - bioconda::r-shinyngs=2.1.0 diff --git a/modules/nf-core/shinyngs/validatefomcomponents/main.nf b/modules/nf-core/shinyngs/validatefomcomponents/main.nf index bedab3e66b1..b8b152fc8f6 100644 --- a/modules/nf-core/shinyngs/validatefomcomponents/main.nf +++ b/modules/nf-core/shinyngs/validatefomcomponents/main.nf @@ -4,8 +4,8 @@ process SHINYNGS_VALIDATEFOMCOMPONENTS { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/r-shinyngs:2.0.0--r43hdfd78af_0' : - 'biocontainers/r-shinyngs:2.0.0--r43hdfd78af_0' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/97/971684ed03cda2689eea7db9e7f2ee74d079ddd74e3a3baac31e958eea6feb0e/data' : + 'community.wave.seqera.io/library/r-shinyngs:2.1.0--09e258eb60cb225f' }" input: tuple val(meta), path(sample), path(assay_files) @@ -40,7 +40,21 @@ process SHINYNGS_VALIDATEFOMCOMPONENTS { cat <<-END_VERSIONS > versions.yml "${task.process}": - r-base: \$(echo \$(R --version 2>&1) | sed 's/^.*R version //; s/ .*\$//') + r-shinyngs: \$(Rscript -e "library(shinyngs); cat(as.character(packageVersion('shinyngs')))") + END_VERSIONS + """ + + stub: + def prefix = task.ext.prefix ?: meta.id + """ + mkdir $prefix + touch $prefix/${prefix}.sample_metadata.tsv + touch $prefix/${prefix}.feature_metadata.tsv + touch $prefix/${prefix}.assay.tsv + touch $prefix/${prefix}.contrasts_file.tsv + + cat <<-END_VERSIONS > versions.yml + "${task.process}": r-shinyngs: \$(Rscript -e "library(shinyngs); cat(as.character(packageVersion('shinyngs')))") END_VERSIONS """ diff --git a/modules/nf-core/shinyngs/validatefomcomponents/tests/main.nf.test b/modules/nf-core/shinyngs/validatefomcomponents/tests/main.nf.test new file mode 100644 index 00000000000..570465e9383 --- /dev/null +++ b/modules/nf-core/shinyngs/validatefomcomponents/tests/main.nf.test @@ -0,0 +1,113 @@ +nextflow_process { + + name "Test Process SHINYNGS_VALIDATEFOMCOMPONENTS" + script "../main.nf" + process "SHINYNGS_VALIDATEFOMCOMPONENTS" + config "./nextflow.config" + + tag "modules" + tag "modules_nfcore" + tag "shinyngs" + tag "shinyngs/validatefomcomponents" + + test("test") { + + when { + params{ + observations_id_col = "sample" + features_id_col = "gene_id" + + module_args = "--sample_id_col '${params.observations_id_col}' --feature_id_col '${params.features_id_col}'" + } + process { + """ + input[0] = [['id':'SRP254919'], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.samplesheet.csv", checkIfExists:true), + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.salmon.merged.gene_counts.top1000cov.tsv", checkIfExists:true) + ] + input[1] = [['id':'SRP254919'], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/Mus_musculus.anno.tsv", checkIfExists:true) + ] + input[2] = [['id':'SRP254919'], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.contrasts.csv", checkIfExists:true) + ] + """ + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } + + test("test_yaml") { + + when { + params{ + observations_id_col = "sample" + features_id_col = "gene_id" + + module_args = "--sample_id_col '${params.observations_id_col}' --feature_id_col '${params.features_id_col}'" + } + process { + """ + input[0] = [['id':'SRP254919'], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.samplesheet.csv", checkIfExists:true), + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.salmon.merged.gene_counts.top1000cov.tsv", checkIfExists:true) + ] + input[1] = [['id':'SRP254919'], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/Mus_musculus.anno.tsv", checkIfExists:true) + ] + input[2] = [['id':'SRP254919'], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.contrasts.yaml", checkIfExists:true) + ] + """ + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } + + test("stub") { + + options "-stub" + + when { + params{ + observations_id_col = "sample" + features_id_col = "gene_id" + + module_args = "--sample_id_col '${params.observations_id_col}' --feature_id_col '${params.features_id_col}'" + } + process { + """ + input[0] = [['id':'SRP254919'], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.samplesheet.csv", checkIfExists:true), + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.salmon.merged.gene_counts.top1000cov.tsv", checkIfExists:true) + ] + input[1] = [['id':'SRP254919'], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/Mus_musculus.anno.tsv", checkIfExists:true) + ] + input[2] = [['id':'SRP254919'], + file(params.modules_testdata_base_path + "genomics/mus_musculus/rnaseq_expression/SRP254919.contrasts.csv", checkIfExists:true) + ] + """ + } + } + + then { + assertAll ( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/nf-core/shinyngs/validatefomcomponents/tests/main.nf.test.snap b/modules/nf-core/shinyngs/validatefomcomponents/tests/main.nf.test.snap new file mode 100644 index 00000000000..c625a750bd2 --- /dev/null +++ b/modules/nf-core/shinyngs/validatefomcomponents/tests/main.nf.test.snap @@ -0,0 +1,245 @@ +{ + "test": { + "content": [ + { + "0": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.samplesheet.sample_metadata.tsv:md5,7c5233cf34fd8eaf7071f21f6fcac7d8" + ] + ], + "1": [ + [ + { + "id": "SRP254919" + }, + "Mus_musculus.anno.feature_metadata.tsv:md5,1b6a2af23f009f4669401678fe0947bb" + ] + ], + "2": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.salmon.merged.gene_counts.top1000cov.assay.tsv:md5,0c2224f6c33af1fe93c3b1382b3e05ce" + ] + ], + "3": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.contrasts.contrasts_file.tsv:md5,e0980240404f48216aedb63b5094029f" + ] + ], + "4": [ + "versions.yml:md5,a2d30e2d652938fb225e7cf251606893" + ], + "assays": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.salmon.merged.gene_counts.top1000cov.assay.tsv:md5,0c2224f6c33af1fe93c3b1382b3e05ce" + ] + ], + "contrasts": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.contrasts.contrasts_file.tsv:md5,e0980240404f48216aedb63b5094029f" + ] + ], + "feature_meta": [ + [ + { + "id": "SRP254919" + }, + "Mus_musculus.anno.feature_metadata.tsv:md5,1b6a2af23f009f4669401678fe0947bb" + ] + ], + "sample_meta": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.samplesheet.sample_metadata.tsv:md5,7c5233cf34fd8eaf7071f21f6fcac7d8" + ] + ], + "versions": [ + "versions.yml:md5,a2d30e2d652938fb225e7cf251606893" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-17T11:12:21.151359039" + }, + "stub": { + "content": [ + { + "0": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.sample_metadata.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.feature_metadata.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "2": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.assay.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "3": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.contrasts_file.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "4": [ + "versions.yml:md5,a2d30e2d652938fb225e7cf251606893" + ], + "assays": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.assay.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "contrasts": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.contrasts_file.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "feature_meta": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.feature_metadata.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "sample_meta": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.sample_metadata.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,a2d30e2d652938fb225e7cf251606893" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-17T15:04:58.889559416" + }, + "test_yaml": { + "content": [ + { + "0": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.samplesheet.sample_metadata.tsv:md5,7c5233cf34fd8eaf7071f21f6fcac7d8" + ] + ], + "1": [ + [ + { + "id": "SRP254919" + }, + "Mus_musculus.anno.feature_metadata.tsv:md5,1b6a2af23f009f4669401678fe0947bb" + ] + ], + "2": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.salmon.merged.gene_counts.top1000cov.assay.tsv:md5,0c2224f6c33af1fe93c3b1382b3e05ce" + ] + ], + "3": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.contrasts.contrasts_file.tsv:md5,e0980240404f48216aedb63b5094029f" + ] + ], + "4": [ + "versions.yml:md5,a2d30e2d652938fb225e7cf251606893" + ], + "assays": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.salmon.merged.gene_counts.top1000cov.assay.tsv:md5,0c2224f6c33af1fe93c3b1382b3e05ce" + ] + ], + "contrasts": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.contrasts.contrasts_file.tsv:md5,e0980240404f48216aedb63b5094029f" + ] + ], + "feature_meta": [ + [ + { + "id": "SRP254919" + }, + "Mus_musculus.anno.feature_metadata.tsv:md5,1b6a2af23f009f4669401678fe0947bb" + ] + ], + "sample_meta": [ + [ + { + "id": "SRP254919" + }, + "SRP254919.samplesheet.sample_metadata.tsv:md5,7c5233cf34fd8eaf7071f21f6fcac7d8" + ] + ], + "versions": [ + "versions.yml:md5,a2d30e2d652938fb225e7cf251606893" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-17T11:20:18.658397016" + } +} \ No newline at end of file diff --git a/modules/nf-core/shinyngs/validatefomcomponents/tests/nextflow.config b/modules/nf-core/shinyngs/validatefomcomponents/tests/nextflow.config new file mode 100644 index 00000000000..ad3d36ef5c9 --- /dev/null +++ b/modules/nf-core/shinyngs/validatefomcomponents/tests/nextflow.config @@ -0,0 +1,3 @@ +process { + ext.args = params.module_args +} diff --git a/modules/nf-core/smoothxg/environment.yml b/modules/nf-core/smoothxg/environment.yml index a837203d000..1e49e2cf889 100644 --- a/modules/nf-core/smoothxg/environment.yml +++ b/modules/nf-core/smoothxg/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::smoothxg=0.7.2 + - bioconda::smoothxg=0.8.0 diff --git a/modules/nf-core/smoothxg/main.nf b/modules/nf-core/smoothxg/main.nf index 191e14cd1e5..e22060d60e7 100644 --- a/modules/nf-core/smoothxg/main.nf +++ b/modules/nf-core/smoothxg/main.nf @@ -4,8 +4,8 @@ process SMOOTHXG { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/smoothxg:0.7.2--h40c17d1_0' : - 'biocontainers/smoothxg:0.7.2--h40c17d1_0' }" + 'https://depot.galaxyproject.org/singularity/smoothxg:0.8.0--h40c17d1_0' : + 'biocontainers/smoothxg:0.8.0--h40c17d1_0' }" input: tuple val(meta), path(gfa) diff --git a/modules/nf-core/taxonkit/lineage/environment.yml b/modules/nf-core/taxonkit/lineage/environment.yml new file mode 100644 index 00000000000..e68c6d6e46d --- /dev/null +++ b/modules/nf-core/taxonkit/lineage/environment.yml @@ -0,0 +1,7 @@ +--- +# yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json +channels: + - conda-forge + - bioconda +dependencies: + - "bioconda::taxonkit=0.18.0" diff --git a/modules/nf-core/taxonkit/lineage/main.nf b/modules/nf-core/taxonkit/lineage/main.nf new file mode 100644 index 00000000000..986a30523fd --- /dev/null +++ b/modules/nf-core/taxonkit/lineage/main.nf @@ -0,0 +1,51 @@ +process TAXONKIT_LINEAGE { + tag "$meta.id" + label 'process_low' + + conda "${moduleDir}/environment.yml" + container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? + 'https://depot.galaxyproject.org/singularity/taxonkit:0.18.0--h9ee0642_0': + 'biocontainers/taxonkit:0.18.0--h9ee0642_0' }" + + input: + tuple val(meta), val(taxid), path(taxidfile) + path taxdb + + output: + tuple val(meta), path("*.tsv"), emit: tsv + 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}" + assert (!taxid && taxidfile) || (taxid && !taxidfile) + """ + taxonkit \\ + lineage \\ + $args \\ + --data-dir $taxdb \\ + --threads $task.cpus \\ + --out-file ${prefix}.tsv \\ + ${taxid? "<<< '$taxid'": taxidfile} + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + taxonkit: \$( taxonkit version | sed 's/.* v//' ) + END_VERSIONS + """ + + stub: + def args = task.ext.args ?: '' + def prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.tsv + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + taxonkit: \$( taxonkit version | sed 's/.* v//' ) + END_VERSIONS + """ +} diff --git a/modules/nf-core/taxonkit/lineage/meta.yml b/modules/nf-core/taxonkit/lineage/meta.yml new file mode 100644 index 00000000000..e8f049899cf --- /dev/null +++ b/modules/nf-core/taxonkit/lineage/meta.yml @@ -0,0 +1,54 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/meta-schema.json +name: "taxonkit_lineage" +description: Convert taxonids to taxon lineages +keywords: + - taxonomy + - taxids + - taxon name + - conversion +tools: + - "taxonkit": + description: "A Cross-platform and Efficient NCBI Taxonomy Toolkit" + homepage: "https://bioinf.shenwei.me/taxonkit/" + documentation: "https://bioinf.shenwei.me/taxonkit/usage/#name2taxid" + tool_dev_url: "https://github.com/shenwei356/taxonkit" + doi: "10.1016/j.jgg.2021.03.006" + licence: ["MIT"] + identifier: biotools:taxonkit + +input: + - - meta: + type: map + description: | + Groovy Map containing sample information + e.g. `[ id:'sample1', single_end:false ]` + - taxid: + type: string + description: Taxon id to look up (provide either this or taxidfile, not both) + - taxidfile: + type: file + description: File with taxon ids to look up, each on their own line (provide + either this or name, not both; the file can contain other information, see the tool's docs) + - - taxdb: + type: file + description: Taxonomy database unpacked from ftp://ftp.ncbi.nih.gov/pub/taxonomy/taxdump.tar.gz +output: + - tsv: + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. `[ id:'sample1', single_end:false ]` + - "*.tsv": + type: file + description: TSV file with added taxon lineages + pattern: "*.tsv" + - versions: + - "versions.yml": + type: file + description: File containing software versions + pattern: "versions.yml" +authors: + - "@erikrikarddaniel" +maintainers: + - "@erikrikarddaniel" diff --git a/modules/nf-core/taxonkit/lineage/tests/main.nf.test b/modules/nf-core/taxonkit/lineage/tests/main.nf.test new file mode 100644 index 00000000000..7f24746eaf2 --- /dev/null +++ b/modules/nf-core/taxonkit/lineage/tests/main.nf.test @@ -0,0 +1,101 @@ +nextflow_process { + + name "Test Process TAXONKIT_LINEAGE" + script "../main.nf" + process "TAXONKIT_LINEAGE" + + tag "modules" + tag "modules_nfcore" + tag "untar" + tag "taxonkit" + tag "taxonkit/lineage" + + setup { + run("UNTAR"){ + script "modules/nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id:'test' ], + file("ftp://ftp.ncbi.nih.gov/pub/taxonomy/taxdump.tar.gz", checkIfExists: true) + ] + """ + } + } + } + + test("sarscov2 - taxonid") { + + when { + process { + """ + input[0] = [ + [ id:'test', single_end:false ], // meta map + "2697049", + [] + ] + input[1] = UNTAR.out.untar.map{ it[1] } + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + + test("sarscov2 - taxid list") { + + when { + process { + """ + input[0] = Channel.of( [ + [ id:'test', single_end:false ], // meta map + '' + ] ).combine( Channel.of("2697049").collectFile( name:'taxids.txt', newLine: true ) ) + input[1] = UNTAR.out.untar.map{ it[1] } + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + + test("sarscov2 - taxid - stub") { + + options "-stub" + + when { + process { + """ + input[0] = [ + [ id:'test', single_end:false ], // meta map + "2697049", + [] + ] + input[1] = UNTAR.out.untar.map{ it[1] } + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + + +} diff --git a/modules/nf-core/taxonkit/lineage/tests/main.nf.test.snap b/modules/nf-core/taxonkit/lineage/tests/main.nf.test.snap new file mode 100644 index 00000000000..4cea6a4acfd --- /dev/null +++ b/modules/nf-core/taxonkit/lineage/tests/main.nf.test.snap @@ -0,0 +1,107 @@ +{ + "sarscov2 - taxid list": { + "content": [ + { + "0": [ + [ + { + "id": "test", + "single_end": false + }, + "test.tsv:md5,e77031f8b6f6865d9fa9525c55b7b4be" + ] + ], + "1": [ + "versions.yml:md5,48f687591d0255bd02b4607e375a09f6" + ], + "tsv": [ + [ + { + "id": "test", + "single_end": false + }, + "test.tsv:md5,e77031f8b6f6865d9fa9525c55b7b4be" + ] + ], + "versions": [ + "versions.yml:md5,48f687591d0255bd02b4607e375a09f6" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-14T15:44:11.506619" + }, + "sarscov2 - taxid - stub": { + "content": [ + { + "0": [ + [ + { + "id": "test", + "single_end": false + }, + "test.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,48f687591d0255bd02b4607e375a09f6" + ], + "tsv": [ + [ + { + "id": "test", + "single_end": false + }, + "test.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,48f687591d0255bd02b4607e375a09f6" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-14T15:44:41.061875" + }, + "sarscov2 - taxonid": { + "content": [ + { + "0": [ + [ + { + "id": "test", + "single_end": false + }, + "test.tsv:md5,e77031f8b6f6865d9fa9525c55b7b4be" + ] + ], + "1": [ + "versions.yml:md5,48f687591d0255bd02b4607e375a09f6" + ], + "tsv": [ + [ + { + "id": "test", + "single_end": false + }, + "test.tsv:md5,e77031f8b6f6865d9fa9525c55b7b4be" + ] + ], + "versions": [ + "versions.yml:md5,48f687591d0255bd02b4607e375a09f6" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-14T15:43:31.166225" + } +} \ No newline at end of file diff --git a/subworkflows/nf-core/abundance_differential_filter/main.nf b/subworkflows/nf-core/abundance_differential_filter/main.nf index 4930b708b55..8c11efa55eb 100644 --- a/subworkflows/nf-core/abundance_differential_filter/main.nf +++ b/subworkflows/nf-core/abundance_differential_filter/main.nf @@ -31,15 +31,16 @@ workflow ABUNDANCE_DIFFERENTIAL_FILTER { // Set up how the channels crossed below will be used to generate channels for processing def criteria = multiMapCriteria { meta_input, abundance, analysis_method, fc_threshold, stat_threshold, meta_exp, samplesheet, meta_contrasts, variable, reference, target -> + def meta_for_diff = mergeMaps(meta_contrasts, meta_input) + [ 'method': analysis_method ] + def meta_input_new = meta_input + [ 'method': analysis_method ] samples_and_matrix: - meta_map = meta_input + [ 'method': analysis_method ] - [meta_map, samplesheet, abundance] - contrasts: - meta_map = mergeMaps(meta_contrasts, meta_input) + [ 'method': analysis_method ] - [ meta_map, variable, reference, target ] + [ meta_input_new, samplesheet, abundance ] + contrasts_for_diff: + [ meta_for_diff, variable, reference, target ] filter_params: - meta_map = mergeMaps(meta_contrasts, meta_input) + [ 'method': analysis_method ] - [meta_map, [ 'fc_threshold': fc_threshold, 'stat_threshold': stat_threshold ]] + [ meta_for_diff, [ 'fc_threshold': fc_threshold, 'stat_threshold': stat_threshold ]] + contrasts_for_norm: + [ meta_input_new, variable, reference, target ] } // For DIFFERENTIAL modules we need to cross the things we're iterating so we @@ -70,13 +71,13 @@ workflow ABUNDANCE_DIFFERENTIAL_FILTER { // LIMMA_NORM directly. It internally runs normalization + DE analysis. LIMMA_NORM( - norm_inputs.contrasts.filter{it[0].method == 'limma'}.first(), + norm_inputs.contrasts_for_norm.filter{it[0].method == 'limma'}, norm_inputs.samples_and_matrix.filter{it[0].method == 'limma'} ) LIMMA_DIFFERENTIAL( - inputs.contrasts.filter{it[0].method == 'limma'}, - inputs.samples_and_matrix.filter { it[0].method == 'limma' } + inputs.contrasts_for_diff.filter{ it[0].method == 'limma' }, + inputs.samples_and_matrix.filter{ it[0].method == 'limma' } ) // ---------------------------------------------------- @@ -91,14 +92,14 @@ workflow ABUNDANCE_DIFFERENTIAL_FILTER { // DESEQ2_NORM directly. It internally runs normalization + DE analysis. DESEQ2_NORM( - norm_inputs.contrasts.filter{it[0].method == 'deseq2'}.first(), + norm_inputs.contrasts_for_norm.filter{it[0].method == 'deseq2'}, norm_inputs.samples_and_matrix.filter{it[0].method == 'deseq2'}, ch_control_features.first(), ch_transcript_lengths.first() ) DESEQ2_DIFFERENTIAL( - inputs.contrasts.filter{it[0].method == 'deseq2'}, + inputs.contrasts_for_diff.filter{it[0].method == 'deseq2'}, inputs.samples_and_matrix.filter{it[0].method == 'deseq2'}, ch_control_features.first(), ch_transcript_lengths.first() @@ -112,7 +113,7 @@ workflow ABUNDANCE_DIFFERENTIAL_FILTER { // not produce a normalized matrix. PROPR_PROPD( - inputs.contrasts.filter{it[0].method == 'propd'}, + inputs.contrasts_for_diff.filter{it[0].method == 'propd'}, inputs.samples_and_matrix.filter { it[0].method == 'propd' } ) diff --git a/subworkflows/nf-core/abundance_differential_filter/meta.yml b/subworkflows/nf-core/abundance_differential_filter/meta.yml index 509520f3ec3..cc22f805353 100644 --- a/subworkflows/nf-core/abundance_differential_filter/meta.yml +++ b/subworkflows/nf-core/abundance_differential_filter/meta.yml @@ -133,7 +133,7 @@ output: authors: - "@pinin4fjords" - "@bjlang" - - "@araiz2001" + - "@caraiz2001" - "@suzannejin" maintainers: - "@pinin4fjords" diff --git a/subworkflows/nf-core/abundance_differential_filter/tests/deseq2_basic.config b/subworkflows/nf-core/abundance_differential_filter/tests/deseq2_basic.config index 508fa04aedc..d6918e56f6a 100644 --- a/subworkflows/nf-core/abundance_differential_filter/tests/deseq2_basic.config +++ b/subworkflows/nf-core/abundance_differential_filter/tests/deseq2_basic.config @@ -1,10 +1,14 @@ process { withName: 'DESEQ2_DIFFERENTIAL' { - ext.args = { "--round_digits 5 --blocking_variables $meta.blocking --vs_method rlog" } + ext.args = { [ + "--round_digits 5", + "--vs_method rlog", + (meta.blocking == null) ? "" : "--blocking_variables $meta.blocking" + ].join(' ').trim() } ext.prefix = { "${meta.id}_${meta.method}" } } withName: 'DESEQ2_NORM' { - ext.prefix = { "${meta.id}_${meta.method}_voom_norm" } + ext.prefix = { "${meta.id}_${meta.method}_norm" } } } diff --git a/subworkflows/nf-core/abundance_differential_filter/tests/deseq2_limmavoom_basic.config b/subworkflows/nf-core/abundance_differential_filter/tests/deseq2_limmavoom_basic.config index a2b6e9efbd9..14fcfefa6dd 100644 --- a/subworkflows/nf-core/abundance_differential_filter/tests/deseq2_limmavoom_basic.config +++ b/subworkflows/nf-core/abundance_differential_filter/tests/deseq2_limmavoom_basic.config @@ -1,6 +1,10 @@ process { withName: 'DESEQ2_DIFFERENTIAL' { - ext.args = { "--round_digits 5 --blocking_variables $meta.blocking --vs_method rlog" } + ext.args = { [ + "--round_digits 5", + "--vs_method rlog", + (meta.blocking == null) ? "" : "--blocking_variables $meta.blocking" + ].join(' ').trim() } ext.prefix = { "${meta.id}_${meta.method}" } } diff --git a/subworkflows/nf-core/abundance_differential_filter/tests/deseq2_limmavoom_propd_basic.config b/subworkflows/nf-core/abundance_differential_filter/tests/deseq2_limmavoom_propd_basic.config index 8bd211bad64..dda5df4bcd4 100644 --- a/subworkflows/nf-core/abundance_differential_filter/tests/deseq2_limmavoom_propd_basic.config +++ b/subworkflows/nf-core/abundance_differential_filter/tests/deseq2_limmavoom_propd_basic.config @@ -1,6 +1,10 @@ process { withName: 'DESEQ2_DIFFERENTIAL' { - ext.args = { "--round_digits 5 --blocking_variables $meta.blocking --vs_method rlog" } + ext.args = { [ + "--round_digits 5", + "--vs_method rlog", + (meta.blocking == null) ? "" : "--blocking_variables $meta.blocking" + ].join(' ').trim() } ext.prefix = { "${meta.id}_${meta.method}" } } diff --git a/subworkflows/nf-core/abundance_differential_filter/tests/main.nf.test b/subworkflows/nf-core/abundance_differential_filter/tests/main.nf.test index 8cbb8cf8767..500a2e800fe 100644 --- a/subworkflows/nf-core/abundance_differential_filter/tests/main.nf.test +++ b/subworkflows/nf-core/abundance_differential_filter/tests/main.nf.test @@ -16,7 +16,7 @@ nextflow_workflow { test("deseq2 - mouse - basic") { config './deseq2_basic.config' - tag "deseq2" + tag "deseq2_basic" when { workflow { @@ -74,7 +74,7 @@ nextflow_workflow { test("limma - basic - microarray") { config './limma_basic_microarray.config' - tag "limma" + tag "limma_basic_microarray" setup { run("UNTAR") { diff --git a/subworkflows/nf-core/abundance_differential_filter/tests/main.nf.test.snap b/subworkflows/nf-core/abundance_differential_filter/tests/main.nf.test.snap index dba530f24eb..6795359ae88 100644 --- a/subworkflows/nf-core/abundance_differential_filter/tests/main.nf.test.snap +++ b/subworkflows/nf-core/abundance_differential_filter/tests/main.nf.test.snap @@ -28,7 +28,7 @@ ] ], [ - + ], [ [ @@ -48,9 +48,9 @@ ], "meta": { "nf-test": "0.9.2", - "nextflow": "24.10.2" + "nextflow": "24.10.3" }, - "timestamp": "2024-12-07T16:33:03.091762783" + "timestamp": "2025-01-14T16:51:17.162826924" }, "deseq2 and limma - mouse - basic": { "content": [ @@ -157,38 +157,26 @@ [ [ { - "id": "treatment_mCherry_hND6__test", - "variable": "treatment", - "reference": "mCherry", - "target": "hND6", - "blocking": "", + "id": "test", "method": "deseq2" }, - "treatment_mCherry_hND6__test_deseq2_norm.normalised_counts.tsv:md5,46ab7200c626649ab6256ed797ef5071" + "test_deseq2_norm.normalised_counts.tsv:md5,46ab7200c626649ab6256ed797ef5071" ], [ { - "id": "treatment_mCherry_hND6__test", - "variable": "treatment", - "reference": "mCherry", - "target": "hND6", - "blocking": "", + "id": "test", "method": "limma" }, - "treatment_mCherry_hND6__test_limma_voom_norm.normalised_counts.tsv:md5,2aa4880ba5ae246a728b25f4316ca2ca" + "test_limma_voom_norm.normalised_counts.tsv:md5,2aa4880ba5ae246a728b25f4316ca2ca" ] ], [ [ { - "id": "treatment_mCherry_hND6__test", - "variable": "treatment", - "reference": "mCherry", - "target": "hND6", - "blocking": "", + "id": "test", "method": "deseq2" }, - "treatment_mCherry_hND6__test_deseq2_norm.rlog.tsv:md5,b1adc1fba6bd0c8b55973608f4b97030" + "test_deseq2_norm.rlog.tsv:md5,b1adc1fba6bd0c8b55973608f4b97030" ] ], [ @@ -246,9 +234,9 @@ ], "meta": { "nf-test": "0.9.2", - "nextflow": "24.10.2" + "nextflow": "24.10.3" }, - "timestamp": "2024-12-07T16:34:54.548033825" + "timestamp": "2025-01-14T16:53:11.245100955" }, "limma - voom": { "content": [ @@ -283,14 +271,10 @@ [ [ { - "id": "treatment_mCherry_hND6__test", - "variable": "treatment", - "reference": "mCherry", - "target": "hND6", - "blocking": "", + "id": "test", "method": "limma" }, - "treatment_mCherry_hND6__test_limma_voom_norm.normalised_counts.tsv:md5,2aa4880ba5ae246a728b25f4316ca2ca" + "test_limma_voom_norm.normalised_counts.tsv:md5,2aa4880ba5ae246a728b25f4316ca2ca" ] ], [ @@ -324,9 +308,9 @@ ], "meta": { "nf-test": "0.9.2", - "nextflow": "24.10.2" + "nextflow": "24.10.3" }, - "timestamp": "2024-12-07T16:33:26.97858478" + "timestamp": "2025-01-14T16:51:32.460857013" }, "deseq2 + limma-voom + propd - mouse - basic": { "content": [ @@ -505,38 +489,26 @@ [ [ { - "id": "treatment_mCherry_hND6__test", - "variable": "treatment", - "reference": "mCherry", - "target": "hND6", - "blocking": "", + "id": "test", "method": "deseq2" }, - "treatment_mCherry_hND6__test_deseq2_norm.normalised_counts.tsv:md5,46ab7200c626649ab6256ed797ef5071" + "test_deseq2_norm.normalised_counts.tsv:md5,46ab7200c626649ab6256ed797ef5071" ], [ { - "id": "treatment_mCherry_hND6__test", - "variable": "treatment", - "reference": "mCherry", - "target": "hND6", - "blocking": "", + "id": "test", "method": "limma" }, - "treatment_mCherry_hND6__test_limma_voom_norm.normalised_counts.tsv:md5,2aa4880ba5ae246a728b25f4316ca2ca" + "test_limma_voom_norm.normalised_counts.tsv:md5,2aa4880ba5ae246a728b25f4316ca2ca" ] ], [ [ { - "id": "treatment_mCherry_hND6__test", - "variable": "treatment", - "reference": "mCherry", - "target": "hND6", - "blocking": "", + "id": "test", "method": "deseq2" }, - "treatment_mCherry_hND6__test_deseq2_norm.rlog.tsv:md5,b1adc1fba6bd0c8b55973608f4b97030" + "test_deseq2_norm.rlog.tsv:md5,b1adc1fba6bd0c8b55973608f4b97030" ] ], [ @@ -596,9 +568,9 @@ ], "meta": { "nf-test": "0.9.2", - "nextflow": "24.10.2" + "nextflow": "24.10.3" }, - "timestamp": "2024-12-13T16:07:08.941008861" + "timestamp": "2025-01-14T16:53:54.80697542" }, "stub": { "content": [ @@ -656,32 +628,24 @@ ] ], "2": [ - + ], "3": [ [ { - "id": "treatment_mCherry_hND6__test", - "variable": "treatment", - "reference": "mCherry", - "target": "hND6", - "blocking": "", + "id": "test", "method": "deseq2" }, - "treatment_mCherry_hND6__test.normalised_counts.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + "test.normalised_counts.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], "4": [ [ { - "id": "treatment_mCherry_hND6__test", - "variable": "treatment", - "reference": "mCherry", - "target": "hND6", - "blocking": "", + "id": "test", "method": "deseq2" }, - "treatment_mCherry_hND6__test.rlog.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + "test.rlog.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], "5": [ @@ -713,7 +677,7 @@ "versions.yml:md5,05e3901f6d78f8839a7e07f422e9bc03" ], "adjacency": [ - + ], "model": [ [ @@ -742,14 +706,10 @@ "normalised_matrix": [ [ { - "id": "treatment_mCherry_hND6__test", - "variable": "treatment", - "reference": "mCherry", - "target": "hND6", - "blocking": "", + "id": "test", "method": "deseq2" }, - "treatment_mCherry_hND6__test.normalised_counts.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + "test.normalised_counts.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], "results_genewise": [ @@ -807,14 +767,10 @@ "variance_stabilised_matrix": [ [ { - "id": "treatment_mCherry_hND6__test", - "variable": "treatment", - "reference": "mCherry", - "target": "hND6", - "blocking": "", + "id": "test", "method": "deseq2" }, - "treatment_mCherry_hND6__test.rlog.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + "test.rlog.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], "versions": [ @@ -825,9 +781,9 @@ ], "meta": { "nf-test": "0.9.2", - "nextflow": "24.10.2" + "nextflow": "24.10.3" }, - "timestamp": "2024-12-13T15:08:45.989521056" + "timestamp": "2025-01-14T16:54:12.823125892" }, "deseq2 - mouse - basic": { "content": [ @@ -886,27 +842,19 @@ [ [ { - "id": "treatment_mCherry_hND6__test", - "variable": "treatment", - "reference": "mCherry", - "target": "hND6", - "blocking": "", + "id": "test", "method": "deseq2" }, - "treatment_mCherry_hND6__test_deseq2_voom_norm.normalised_counts.tsv:md5,46ab7200c626649ab6256ed797ef5071" + "test_deseq2_norm.normalised_counts.tsv:md5,46ab7200c626649ab6256ed797ef5071" ] ], [ [ { - "id": "treatment_mCherry_hND6__test", - "variable": "treatment", - "reference": "mCherry", - "target": "hND6", - "blocking": "", + "id": "test", "method": "deseq2" }, - "treatment_mCherry_hND6__test_deseq2_voom_norm.rlog.tsv:md5,b1adc1fba6bd0c8b55973608f4b97030" + "test_deseq2_norm.rlog.tsv:md5,b1adc1fba6bd0c8b55973608f4b97030" ] ], [ @@ -940,9 +888,9 @@ ], "meta": { "nf-test": "0.9.2", - "nextflow": "24.10.2" + "nextflow": "24.10.3" }, - "timestamp": "2024-12-07T16:32:17.301539736" + "timestamp": "2025-01-14T16:50:35.085607799" }, "deseq2 - with transcript lengths": { "content": [ @@ -1001,27 +949,19 @@ [ [ { - "id": "treatment_mCherry_hND6__test", - "variable": "treatment", - "reference": "mCherry", - "target": "hND6", - "blocking": "", + "id": "test", "method": "deseq2" }, - "treatment_mCherry_hND6__test_deseq2_voom_norm.normalised_counts.tsv:md5,7050f44c460cc13e3f101d048d503527" + "test_deseq2_norm.normalised_counts.tsv:md5,7050f44c460cc13e3f101d048d503527" ] ], [ [ { - "id": "treatment_mCherry_hND6__test", - "variable": "treatment", - "reference": "mCherry", - "target": "hND6", - "blocking": "", + "id": "test", "method": "deseq2" }, - "treatment_mCherry_hND6__test_deseq2_voom_norm.rlog.tsv:md5,22a4b117246b2317e0f4daf7919703f2" + "test_deseq2_norm.rlog.tsv:md5,22a4b117246b2317e0f4daf7919703f2" ] ], [ @@ -1055,9 +995,9 @@ ], "meta": { "nf-test": "0.9.2", - "nextflow": "24.10.2" + "nextflow": "24.10.3" }, - "timestamp": "2024-12-07T16:34:05.584119298" + "timestamp": "2025-01-14T16:52:07.822745077" }, "propd - mouse - basic": { "content": [ @@ -1144,8 +1084,8 @@ ], "meta": { "nf-test": "0.9.2", - "nextflow": "24.10.2" + "nextflow": "24.10.3" }, - "timestamp": "2024-12-13T15:02:45.903371649" + "timestamp": "2025-01-14T16:52:25.336720308" } -} +} \ No newline at end of file diff --git a/subworkflows/nf-core/fasta_explore_search_plot_tidk/tests/main.nf.test.snap b/subworkflows/nf-core/fasta_explore_search_plot_tidk/tests/main.nf.test.snap index 40bd469c624..7a69a7e67b7 100644 --- a/subworkflows/nf-core/fasta_explore_search_plot_tidk/tests/main.nf.test.snap +++ b/subworkflows/nf-core/fasta_explore_search_plot_tidk/tests/main.nf.test.snap @@ -56,11 +56,11 @@ ], "5": [ "versions.yml:md5,02d48eb43c3882d9832c88b9e080b420", + "versions.yml:md5,0864338873810e18c736c9c4d3429cd5", + "versions.yml:md5,5d37588f1ce7605624b2a9b52ff72d0c", "versions.yml:md5,5f9958ea613eceae4b09bb42ecaac656", "versions.yml:md5,6713d71b01fe0402e5d32f1a5a181e0f", - "versions.yml:md5,702fdfb5f74070b208b10384021f3f28", "versions.yml:md5,83a6abbf9b68ec1e6152c5b6eb12f0d7", - "versions.yml:md5,95dde1750b4171bedad83c5340cc712b", "versions.yml:md5,b900c2a21c17ac2d16e33641e64fc7c1" ], "aposteriori_sequence": [ @@ -117,20 +117,20 @@ ], "versions": [ "versions.yml:md5,02d48eb43c3882d9832c88b9e080b420", + "versions.yml:md5,0864338873810e18c736c9c4d3429cd5", + "versions.yml:md5,5d37588f1ce7605624b2a9b52ff72d0c", "versions.yml:md5,5f9958ea613eceae4b09bb42ecaac656", "versions.yml:md5,6713d71b01fe0402e5d32f1a5a181e0f", - "versions.yml:md5,702fdfb5f74070b208b10384021f3f28", "versions.yml:md5,83a6abbf9b68ec1e6152c5b6eb12f0d7", - "versions.yml:md5,95dde1750b4171bedad83c5340cc712b", "versions.yml:md5,b900c2a21c17ac2d16e33641e64fc7c1" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:52:52.0126754" + "timestamp": "2025-01-16T07:01:58.803379" }, "homo_sapiens-genome_fasta-genome_21_fasta-no_apriori-stub": { "content": [ @@ -185,10 +185,10 @@ ], "5": [ "versions.yml:md5,02d48eb43c3882d9832c88b9e080b420", + "versions.yml:md5,0864338873810e18c736c9c4d3429cd5", + "versions.yml:md5,5d37588f1ce7605624b2a9b52ff72d0c", "versions.yml:md5,5f9958ea613eceae4b09bb42ecaac656", - "versions.yml:md5,6713d71b01fe0402e5d32f1a5a181e0f", - "versions.yml:md5,702fdfb5f74070b208b10384021f3f28", - "versions.yml:md5,95dde1750b4171bedad83c5340cc712b" + "versions.yml:md5,6713d71b01fe0402e5d32f1a5a181e0f" ], "aposteriori_sequence": [ [ @@ -240,18 +240,18 @@ ], "versions": [ "versions.yml:md5,02d48eb43c3882d9832c88b9e080b420", + "versions.yml:md5,0864338873810e18c736c9c4d3429cd5", + "versions.yml:md5,5d37588f1ce7605624b2a9b52ff72d0c", "versions.yml:md5,5f9958ea613eceae4b09bb42ecaac656", - "versions.yml:md5,6713d71b01fe0402e5d32f1a5a181e0f", - "versions.yml:md5,702fdfb5f74070b208b10384021f3f28", - "versions.yml:md5,95dde1750b4171bedad83c5340cc712b" + "versions.yml:md5,6713d71b01fe0402e5d32f1a5a181e0f" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:53:21.817193592" + "timestamp": "2025-01-16T07:02:21.256708" }, "homo_sapiens-genome_fasta-genome_21_fasta-partial_apriori-stub": { "content": [ @@ -316,11 +316,11 @@ ], "5": [ "versions.yml:md5,02d48eb43c3882d9832c88b9e080b420", + "versions.yml:md5,0864338873810e18c736c9c4d3429cd5", + "versions.yml:md5,5d37588f1ce7605624b2a9b52ff72d0c", "versions.yml:md5,5f9958ea613eceae4b09bb42ecaac656", "versions.yml:md5,6713d71b01fe0402e5d32f1a5a181e0f", - "versions.yml:md5,702fdfb5f74070b208b10384021f3f28", "versions.yml:md5,83a6abbf9b68ec1e6152c5b6eb12f0d7", - "versions.yml:md5,95dde1750b4171bedad83c5340cc712b", "versions.yml:md5,b900c2a21c17ac2d16e33641e64fc7c1" ], "aposteriori_sequence": [ @@ -383,19 +383,19 @@ ], "versions": [ "versions.yml:md5,02d48eb43c3882d9832c88b9e080b420", + "versions.yml:md5,0864338873810e18c736c9c4d3429cd5", + "versions.yml:md5,5d37588f1ce7605624b2a9b52ff72d0c", "versions.yml:md5,5f9958ea613eceae4b09bb42ecaac656", "versions.yml:md5,6713d71b01fe0402e5d32f1a5a181e0f", - "versions.yml:md5,702fdfb5f74070b208b10384021f3f28", "versions.yml:md5,83a6abbf9b68ec1e6152c5b6eb12f0d7", - "versions.yml:md5,95dde1750b4171bedad83c5340cc712b", "versions.yml:md5,b900c2a21c17ac2d16e33641e64fc7c1" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "23.10.1" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-05-08T08:53:07.119615485" + "timestamp": "2025-01-16T07:02:10.532406" } } \ No newline at end of file diff --git a/subworkflows/nf-core/fastq_find_mirna_mirdeep2/tests/main.nf.test.snap b/subworkflows/nf-core/fastq_find_mirna_mirdeep2/tests/main.nf.test.snap index c48df3d7ed9..f586e0282fa 100644 --- a/subworkflows/nf-core/fastq_find_mirna_mirdeep2/tests/main.nf.test.snap +++ b/subworkflows/nf-core/fastq_find_mirna_mirdeep2/tests/main.nf.test.snap @@ -3,9 +3,9 @@ "content": [ [ "versions.yml:md5,10138b74aed5b2658c26ddf80ff391d5", - "versions.yml:md5,631c0428c28d5355f0e3e9bd790bd77d", - "versions.yml:md5,706a3f609ec9d66162576d93a6f6a67b", - "versions.yml:md5,756eee52b4a45f7a9effe33b1cd3cb92" + "versions.yml:md5,756eee52b4a45f7a9effe33b1cd3cb92", + "versions.yml:md5,9a9fc91d495845c5c9b456d55390da95", + "versions.yml:md5,e7bce91addb97e0d2f5ca1869adeeed4" ], true, "result_small_Clone1_N1.bed:md5,98a74ac6dd16ee876e9a3f54d2695c88", diff --git a/tests/config/pytest_modules.yml b/tests/config/pytest_modules.yml index 1dfd96fce1e..840024ec12d 100644 --- a/tests/config/pytest_modules.yml +++ b/tests/config/pytest_modules.yml @@ -97,15 +97,6 @@ cooler/zoomify: coreograph: - modules/nf-core/coreograph/** - tests/modules/nf-core/coreograph/** -custom/matrixfilter: - - modules/nf-core/custom/matrixfilter/** - - tests/modules/nf-core/custom/matrixfilter/** -custom/tabulartogseacls: - - modules/nf-core/custom/tabulartogseacls/** - - tests/modules/nf-core/custom/tabulartogseacls/** -custom/tabulartogseagct: - - modules/nf-core/custom/tabulartogseagct/** - - tests/modules/nf-core/custom/tabulartogseagct/** cutesv: - modules/nf-core/cutesv/** - tests/modules/nf-core/cutesv/** @@ -191,9 +182,6 @@ gfastats: gget/gget: - modules/nf-core/gget/gget/** - tests/modules/nf-core/gget/gget/** -gprofiler2/gost: - - modules/nf-core/gprofiler2/gost/** - - tests/modules/nf-core/gprofiler2/gost/** graphmap2/align: - modules/nf-core/graphmap2/align/** - tests/modules/nf-core/graphmap2/align/** @@ -269,12 +257,6 @@ kofamscan: krakentools/combinekreports: - modules/nf-core/krakentools/combinekreports/** - tests/modules/nf-core/krakentools/combinekreports/** -krakenuniq/build: - - modules/nf-core/krakenuniq/build/** - - tests/modules/nf-core/krakenuniq/build/** -krakenuniq/download: - - modules/nf-core/krakenuniq/download/** - - tests/modules/nf-core/krakenuniq/download/** krona/kronadb: - modules/nf-core/krona/kronadb/** - tests/modules/nf-core/krona/kronadb/** @@ -323,15 +305,6 @@ mitohifi/findmitoreference: mitohifi/mitohifi: - modules/nf-core/mitohifi/mitohifi/** - tests/modules/nf-core/mitohifi/mitohifi/** -mmseqs/easysearch: - - modules/nf-core/mmseqs/easysearch/** - - tests/modules/nf-core/mmseqs/easysearch/** -mmseqs/search: - - modules/nf-core/mmseqs/search/** - - tests/modules/nf-core/mmseqs/search/** -mmseqs/tsv2exprofiledb: - - modules/nf-core/mmseqs/tsv2exprofiledb/** - - tests/modules/nf-core/mmseqs/tsv2exprofiledb/** motus/downloaddb: - modules/nf-core/motus/downloaddb/** - tests/modules/nf-core/motus/downloaddb/** @@ -459,12 +432,6 @@ sgdemux: shigeifinder: - modules/nf-core/shigeifinder/** - tests/modules/nf-core/shigeifinder/** -shinyngs/staticdifferential: - - modules/nf-core/shinyngs/staticdifferential/** - - tests/modules/nf-core/shinyngs/staticdifferential/** -shinyngs/validatefomcomponents: - - modules/nf-core/shinyngs/validatefomcomponents/** - - tests/modules/nf-core/shinyngs/validatefomcomponents/** snapaligner/align: - modules/nf-core/snapaligner/align/** - tests/modules/nf-core/snapaligner/align/** diff --git a/tests/config/test_data.config b/tests/config/test_data.config index a03e334e56e..2ffaa77c9f4 100644 --- a/tests/config/test_data.config +++ b/tests/config/test_data.config @@ -230,6 +230,16 @@ params { test_10x_matrix_rna_raw_h5 = "${params.test_data_base}/data/genomics/homo_sapiens/10xgenomics/cellranger/hashing_demultiplexing/438-21-raw_feature_bc_matrix.h5" test_10x_matrix_hto_csv = "${params.test_data_base}/data/genomics/homo_sapiens/10xgenomics/cellranger/hashing_demultiplexing/438_21_raw_HTO.csv" + + test_10x_sc3_v3_5k_a549_gex_l1_fastq1 = "${params.test_data_base}/data/genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/gex/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_gex_S5_L001_R1_001.fastq.gz" + test_10x_sc3_v3_5k_a549_gex_l1_fastq2 = "${params.test_data_base}/data/genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/gex/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_gex_S5_L001_R2_001.fastq.gz" + test_10x_sc3_v3_5k_a549_gex_l2_fastq1 = "${params.test_data_base}/data/genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/gex/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_gex_S5_L002_R1_001.fastq.gz" + test_10x_sc3_v3_5k_a549_gex_l2_fastq2 = "${params.test_data_base}/data/genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/gex/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_gex_S5_L002_R2_001.fastq.gz" + test_10x_sc3_v3_5k_a549_crispr_l1_fastq1 = "${params.test_data_base}/data/genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/crispr/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_crispr_S4_L001_R1_001.fastq.gz" + test_10x_sc3_v3_5k_a549_crispr_l1_fastq2 = "${params.test_data_base}/data/genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/crispr/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_crispr_S4_L001_R2_001.fastq.gz" + test_10x_sc3_v3_5k_a549_crispr_l2_fastq1 = "${params.test_data_base}/data/genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/crispr/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_crispr_S4_L002_R1_001.fastq.gz" + test_10x_sc3_v3_5k_a549_crispr_l2_fastq2 = "${params.test_data_base}/data/genomics/homo_sapiens/10xgenomics/cellranger/sc3_v3_5k_a549_gex_crispr/fastqs/crispr/subsampled_SC3_v3_NextGem_DI_CRISPR_A549_5K_crispr_S4_L002_R2_001.fastq.gz" + } spaceranger { test_10x_ffpe_cytassist_fastq_1_gz = "${params.test_data_base}/data/genomics/homo_sapiens/10xgenomics/spaceranger/human-brain-cancer-11-mm-capture-area-ffpe-2-standard_v2_ffpe_cytassist/CytAssist_11mm_FFPE_Human_Glioblastoma_2_S1_L001_R1_001.fastq.gz" @@ -697,7 +707,7 @@ params { sources_taxid_csv = "${params.test_data_base}/data/genomics/prokaryotes/metagenome/taxonomy/misc/sources_labels.csv" sources_labels_csv = "${params.test_data_base}/data/genomics/prokaryotes/metagenome/taxonomy/misc/sources_taxid.csv" taxa_sqlite = "${params.test_data_base}/data/genomics/prokaryotes/metagenome/taxonomy/misc/taxa_sqlite.xz" - taxa_sqlite_traverse_pkl = "${params.test_data_base}/data/genomics/prokaryotes/metagenome/taxonomy/misc/taxa_sqlite_traverse.pkl" + taxa_sqlite_traverse_pkl = "${params.test_data_base}/data/genomics/prokaryotes/metagenome/taxonomy/misc/taxa_sqlite_traverse.pkl" } } 'saccharomyces_cerevisiae' { diff --git a/tests/modules/nf-core/custom/matrixfilter/main.nf b/tests/modules/nf-core/custom/matrixfilter/main.nf deleted file mode 100644 index 4f95cb1a607..00000000000 --- a/tests/modules/nf-core/custom/matrixfilter/main.nf +++ /dev/null @@ -1,85 +0,0 @@ -#!/usr/bin/env nextflow - -nextflow.enable.dsl = 2 - -include { CUSTOM_MATRIXFILTER } from '../../../../../modules/nf-core/custom/matrixfilter/main.nf' - -empty_samplesheet = [[],[]] - -workflow test_custom_matrixfilter { - - expression_matrix_file = file(params.test_data['mus_musculus']['genome']['rnaseq_matrix'], checkIfExists: true) - - ch_samples_matrix = [ [ "id":"SRP254919" ], expression_matrix_file ] - - CUSTOM_MATRIXFILTER( - ch_samples_matrix, - empty_samplesheet - ) -} - -workflow test_custom_matrixfilter_prop { - - expression_matrix_file = file(params.test_data['mus_musculus']['genome']['rnaseq_matrix'], checkIfExists: true) - - ch_samples_matrix = [ [ "id":"SRP254919" ], expression_matrix_file ] - - CUSTOM_MATRIXFILTER( - ch_samples_matrix, - empty_samplesheet - ) -} - -workflow test_custom_matrixfilter_group { - - expression_sample_sheet = file(params.test_data['mus_musculus']['genome']['rnaseq_samplesheet'], checkIfExists: true) - expression_matrix_file = file(params.test_data['mus_musculus']['genome']['rnaseq_matrix'], checkIfExists: true) - - ch_samples_matrix = [ [ "id":"SRP254919" ], expression_matrix_file ] - ch_samplesheet = [ [ "id":"SRP254919" ], expression_sample_sheet ] - - CUSTOM_MATRIXFILTER( - ch_samples_matrix, - ch_samplesheet - ) -} - -workflow test_custom_matrixfilter_na_prop { - - expression_sample_sheet = file(params.test_data['proteomics']['maxquant']['mq_samplesheet'], checkIfExists: true) - expression_matrix_file = file(params.test_data['proteomics']['maxquant']['mq_proteus_mat'], checkIfExists: true) - - ch_samples_matrix = [ [ "id":"mq_prop" ], expression_matrix_file ] - ch_samplesheet = [ [ "id":"mq_prop" ], expression_sample_sheet ] - - CUSTOM_MATRIXFILTER( - ch_samples_matrix, - ch_samplesheet - ) -} - -workflow test_custom_matrixfilter_na_samples { - - expression_sample_sheet = file(params.test_data['proteomics']['maxquant']['mq_samplesheet'], checkIfExists: true) - expression_matrix_file = file(params.test_data['proteomics']['maxquant']['mq_proteus_mat'], checkIfExists: true) - - ch_samples_matrix = [ [ "id":"mq_samples" ], expression_matrix_file ] - ch_samplesheet = [ [ "id":"mq_samples" ], expression_sample_sheet ] - - CUSTOM_MATRIXFILTER( - ch_samples_matrix, - ch_samplesheet - ) -} - -workflow test_custom_matrixfilter_var { - - expression_matrix_file = file(params.test_data['mus_musculus']['genome']['rnaseq_matrix'], checkIfExists: true) - - ch_samples_matrix = [ [ "id":"SRP254919" ], expression_matrix_file ] - - CUSTOM_MATRIXFILTER( - ch_samples_matrix, - empty_samplesheet - ) -} diff --git a/tests/modules/nf-core/custom/matrixfilter/nextflow.config b/tests/modules/nf-core/custom/matrixfilter/nextflow.config deleted file mode 100644 index cd0925f534e..00000000000 --- a/tests/modules/nf-core/custom/matrixfilter/nextflow.config +++ /dev/null @@ -1,33 +0,0 @@ -process { - - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - - withName: 'test_custom_matrixfilter:CUSTOM_MATRIXFILTER' { - ext.args = { "--minimum_abundance 10" } - ext.prefix = { "${meta.id}_test" } - } - - withName: 'test_custom_matrixfilter_prop:CUSTOM_MATRIXFILTER' { - ext.args = { "--minimum_proportion 0.75" } - ext.prefix = { "${meta.id}_test" } - } - - withName: 'test_custom_matrixfilter_group:CUSTOM_MATRIXFILTER' { - ext.args = { "--minimum_proportion 1 --grouping_variable treatment" } - ext.prefix = { "${meta.id}_test" } - } - - withName: 'test_custom_matrixfilter_na_prop:CUSTOM_MATRIXFILTER' { - ext.args = { "--sample_id_col Experiment --minimum_abundance 20" } - ext.prefix = { "${meta.id}_test" } - } - - withName: 'test_custom_matrixfilter_na_samples:CUSTOM_MATRIXFILTER' { - ext.args = { "--sample_id_col Experiment --minimum_abundance 28 --minimum_samples_not_na 1" } - ext.prefix = { "${meta.id}_test" } - } - withName: 'test_custom_matrixfilter_var:CUSTOM_MATRIXFILTER' { - ext.args = { "--most_variant_features 500" } - ext.prefix = { "${meta.id}_test" } - } -} diff --git a/tests/modules/nf-core/custom/matrixfilter/test.yml b/tests/modules/nf-core/custom/matrixfilter/test.yml deleted file mode 100644 index fc86adf9323..00000000000 --- a/tests/modules/nf-core/custom/matrixfilter/test.yml +++ /dev/null @@ -1,64 +0,0 @@ -- name: custom matrixfilter test_custom_matrixfilter - command: nextflow run ./tests/modules/nf-core/custom/matrixfilter -entry test_custom_matrixfilter -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/custom/matrixfilter/nextflow.config - tags: - - custom - - custom/matrixfilter - files: - - path: output/custom/R_sessionInfo.log - - path: output/custom/SRP254919_test.filtered.tsv - md5sum: ecc3ca4c6538f9248dce844108474a66 - - path: output/custom/SRP254919_test.tests.tsv - md5sum: 9a0f14988df8c1b8975039eed91b85e2 - - path: output/custom/versions.yml - -- name: custom matrixfilter test_custom_matrixfilter_prop - command: nextflow run ./tests/modules/nf-core/custom/matrixfilter -entry test_custom_matrixfilter_prop -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/custom/matrixfilter/nextflow.config - tags: - - custom - - custom/matrixfilter - files: - - path: output/custom/R_sessionInfo.log - - path: output/custom/SRP254919_test.filtered.tsv - md5sum: 0c2224f6c33af1fe93c3b1382b3e05ce - - path: output/custom/SRP254919_test.tests.tsv - md5sum: bea4d9e7f73e47b65b2a3ee55c742da2 - - path: output/custom/versions.yml - -- name: custom matrixfilter test_custom_matrixfilter_group - command: nextflow run ./tests/modules/nf-core/custom/matrixfilter -entry test_custom_matrixfilter_group -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/custom/matrixfilter/nextflow.config - tags: - - custom - - custom/matrixfilter - files: - - path: output/custom/R_sessionInfo.log - - path: output/custom/SRP254919_test.filtered.tsv - md5sum: 0c2224f6c33af1fe93c3b1382b3e05ce - - path: output/custom/SRP254919_test.tests.tsv - md5sum: bea4d9e7f73e47b65b2a3ee55c742da2 - - path: output/custom/versions.yml - -- name: custom matrixfilter test_custom_matrixfilter_na_prop - command: nextflow run ./tests/modules/nf-core/custom/matrixfilter -entry test_custom_matrixfilter_na_prop -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/custom/matrixfilter/nextflow.config - tags: - - custom - - custom/matrixfilter - files: - - path: output/custom/R_sessionInfo.log - - path: output/custom/mq_prop_test.filtered.tsv - md5sum: f5bcfe041816e20ef4cd89bbe0a7e7a2 - - path: output/custom/mq_prop_test.tests.tsv - md5sum: 12fc7c32300f774924c5d4ad59b1e447 - - path: output/custom/versions.yml - -- name: custom matrixfilter test_custom_matrixfilter_na_samples - command: nextflow run ./tests/modules/nf-core/custom/matrixfilter -entry test_custom_matrixfilter_na_samples -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/custom/matrixfilter/nextflow.config - tags: - - custom - - custom/matrixfilter - files: - - path: output/custom/R_sessionInfo.log - - path: output/custom/mq_samples_test.filtered.tsv - md5sum: 3e7a9f571fb2e18708918416117cae9a - - path: output/custom/mq_samples_test.tests.tsv - md5sum: 48dc8bf35ca92bc89d307242353dfe5c - - path: output/custom/versions.yml diff --git a/tests/modules/nf-core/custom/tabulartogseacls/main.nf b/tests/modules/nf-core/custom/tabulartogseacls/main.nf deleted file mode 100644 index ded4783708a..00000000000 --- a/tests/modules/nf-core/custom/tabulartogseacls/main.nf +++ /dev/null @@ -1,47 +0,0 @@ -#!/usr/bin/env nextflow - -nextflow.enable.dsl = 2 - -include { CUSTOM_TABULARTOGSEACLS } from '../../../../../modules/nf-core/custom/tabulartogseacls/main.nf' - -expression_sample_sheet = file(params.test_data['mus_musculus']['genome']['rnaseq_samplesheet'], checkIfExists: true) - -workflow test_custom_tabulartogseacls { - - input = [ - [ id:'test', variable:'treatment' ], // meta map - expression_sample_sheet - ] - - CUSTOM_TABULARTOGSEACLS ( input ) -} - -workflow test_custom_tabulartogseacls_tsv { - - input = Channel.fromPath(expression_sample_sheet) - .splitCsv(header: false) - .map{ - it.join('\t') - } - .collectFile(name: 'test.tsv', newLine: true, sort: false) - .map{ - [ [ id:'test', variable:'treatment' ], it] - } - - CUSTOM_TABULARTOGSEACLS ( input ) -} - -workflow test_custom_tabulartogseacls_tsv_override { - - input = Channel.fromPath(expression_sample_sheet) - .splitCsv(header: false) - .map{ - it.join('\t') - } - .collectFile(name: 'test.csv', newLine: true, sort: false) - .map{ - [ [ id:'test', variable:'treatment' ], it] - } - - CUSTOM_TABULARTOGSEACLS ( input ) -} diff --git a/tests/modules/nf-core/custom/tabulartogseacls/nextflow.config b/tests/modules/nf-core/custom/tabulartogseacls/nextflow.config deleted file mode 100644 index ec4668a461c..00000000000 --- a/tests/modules/nf-core/custom/tabulartogseacls/nextflow.config +++ /dev/null @@ -1,14 +0,0 @@ -process { - - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - - withName: 'test_custom_tabulartogseacls:CUSTOM_TABULARTOGSEACLS' { - ext.args = { [ "variable": "$meta.variable" ] } - } - withName: 'test_custom_tabulartogseacls_tsv:CUSTOM_TABULARTOGSEACLS' { - ext.args = { [ "variable": "$meta.variable" ] } - } - withName: 'test_custom_tabulartogseacls_tsv_override:CUSTOM_TABULARTOGSEACLS' { - ext.args = { [ "separator": "\t", "variable": "$meta.variable" ] } - } -} diff --git a/tests/modules/nf-core/custom/tabulartogseacls/test.yml b/tests/modules/nf-core/custom/tabulartogseacls/test.yml deleted file mode 100644 index c5212f2cad0..00000000000 --- a/tests/modules/nf-core/custom/tabulartogseacls/test.yml +++ /dev/null @@ -1,26 +0,0 @@ -- name: custom tabulartogseacls test_custom_tabulartogseacls - command: nextflow run ./tests/modules/nf-core/custom/tabulartogseacls -entry test_custom_tabulartogseacls -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/custom/tabulartogseacls/nextflow.config - tags: - - custom/tabulartogseacls - - custom - files: - - path: output/custom/test.cls - md5sum: 7b887159417842b1fe87afebe4f8c2b7 - -- name: custom tabulartogseacls test_custom_tabulartogseacls_tsv - command: nextflow run ./tests/modules/nf-core/custom/tabulartogseacls -entry test_custom_tabulartogseacls_tsv -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/custom/tabulartogseacls/nextflow.config - tags: - - custom/tabulartogseacls - - custom - files: - - path: output/custom/test.cls - md5sum: 7b887159417842b1fe87afebe4f8c2b7 - -- name: custom tabulartogseacls test_custom_tabulartogseacls_tsv_override - command: nextflow run ./tests/modules/nf-core/custom/tabulartogseacls -entry test_custom_tabulartogseacls_tsv_override -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/custom/tabulartogseacls/nextflow.config - tags: - - custom/tabulartogseacls - - custom - files: - - path: output/custom/test.cls - md5sum: 7b887159417842b1fe87afebe4f8c2b7 diff --git a/tests/modules/nf-core/custom/tabulartogseagct/main.nf b/tests/modules/nf-core/custom/tabulartogseagct/main.nf deleted file mode 100644 index f990fff6d5b..00000000000 --- a/tests/modules/nf-core/custom/tabulartogseagct/main.nf +++ /dev/null @@ -1,78 +0,0 @@ -#!/usr/bin/env nextflow - -nextflow.enable.dsl = 2 - -include { CUSTOM_TABULARTOGSEAGCT } from '../../../../../modules/nf-core/custom/tabulartogseagct/main.nf' - -infile = params.test_data['mus_musculus']['genome']['rnaseq_matrix'] - -workflow test_custom_tabulartogseagct { - - input = Channel.fromPath(infile) - .splitCsv(sep: "\t", header: false) - .map{ - lst = new ArrayList(it); - lst.remove(1); - lst.join('\t') - } - .collectFile(name: 'test.tsv', newLine: true, sort: false) - .map{ - [ [ id:'test' ], it] - } - - CUSTOM_TABULARTOGSEAGCT ( input ) -} - -workflow test_custom_tabulartogseagct_csv { - - input = Channel.fromPath(infile) - .splitCsv(sep: "\t", header: false) - .map{ - lst = new ArrayList(it); - lst.remove(1); - lst.join(',') - } - .view() - .collectFile(name: 'test.csv', newLine: true, sort: false) - .map{ - [ [ id:'test' ], it] - } - - CUSTOM_TABULARTOGSEAGCT ( input ) -} - -workflow test_custom_tabulartogseagct_csv_override { - - input = Channel.fromPath(infile) - .splitCsv(sep: "\t", header: false) - .map{ - lst = new ArrayList(it); - lst.remove(1); - lst.join(',') - } - .view() - .collectFile(name: 'test.tsv', newLine: true, sort: false) - .map{ - [ [ id:'test' ], it] - } - - CUSTOM_TABULARTOGSEAGCT ( input ) -} - -workflow test_custom_tabulartogseagct_csv_override_pipe { - - input = Channel.fromPath(infile) - .splitCsv(sep: "\t", header: false) - .map{ - lst = new ArrayList(it); - lst.remove(1); - lst.join('|') - } - .view() - .collectFile(name: 'test.tsv', newLine: true, sort: false) - .map{ - [ [ id:'test' ], it] - } - - CUSTOM_TABULARTOGSEAGCT ( input ) -} diff --git a/tests/modules/nf-core/custom/tabulartogseagct/nextflow.config b/tests/modules/nf-core/custom/tabulartogseagct/nextflow.config deleted file mode 100644 index 5264d2a856b..00000000000 --- a/tests/modules/nf-core/custom/tabulartogseagct/nextflow.config +++ /dev/null @@ -1,12 +0,0 @@ -process { - - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - - withName: 'test_custom_tabulartogseagct_csv_override:CUSTOM_TABULARTOGSEAGCT' { - ext.args = { [ "separator": "," ] } - } - withName: 'test_custom_tabulartogseagct_csv_override_pipe:CUSTOM_TABULARTOGSEAGCT' { - ext.args = { [ "separator": "|" ] } - } - -} diff --git a/tests/modules/nf-core/custom/tabulartogseagct/test.yml b/tests/modules/nf-core/custom/tabulartogseagct/test.yml deleted file mode 100644 index c1f4959ef90..00000000000 --- a/tests/modules/nf-core/custom/tabulartogseagct/test.yml +++ /dev/null @@ -1,35 +0,0 @@ -- name: custom tabulartogseagct test_custom_tabulartogseagct - command: nextflow run ./tests/modules/nf-core/custom/tabulartogseagct -entry test_custom_tabulartogseagct -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/custom/tabulartogseagct/nextflow.config - tags: - - custom - - custom/tabulartogseagct - files: - - path: output/custom/test.gct - md5sum: 008c1c51294cb3f405817b7e5527f182 - -- name: custom tabulartogseagct test_custom_tabulartogseagct_csv - command: nextflow run ./tests/modules/nf-core/custom/tabulartogseagct -entry test_custom_tabulartogseagct_csv -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/custom/tabulartogseagct/nextflow.config - tags: - - custom - - custom/tabulartogseagct - files: - - path: output/custom/test.gct - md5sum: 008c1c51294cb3f405817b7e5527f182 - -- name: custom tabulartogseagct test_custom_tabulartogseagct_csv_override - command: nextflow run ./tests/modules/nf-core/custom/tabulartogseagct -entry test_custom_tabulartogseagct_csv_override -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/custom/tabulartogseagct/nextflow.config - tags: - - custom - - custom/tabulartogseagct - files: - - path: output/custom/test.gct - md5sum: 008c1c51294cb3f405817b7e5527f182 - -- name: custom tabulartogseagct test_custom_tabulartogseagct_csv_override_pipe - command: nextflow run ./tests/modules/nf-core/custom/tabulartogseagct -entry test_custom_tabulartogseagct_csv_override_pipe -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/custom/tabulartogseagct/nextflow.config - tags: - - custom - - custom/tabulartogseagct - files: - - path: output/custom/test.gct - md5sum: 008c1c51294cb3f405817b7e5527f182 diff --git a/tests/modules/nf-core/gprofiler2/gost/main.nf b/tests/modules/nf-core/gprofiler2/gost/main.nf deleted file mode 100644 index d99cba085d3..00000000000 --- a/tests/modules/nf-core/gprofiler2/gost/main.nf +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env nextflow - -nextflow.enable.dsl = 2 - -include { GPROFILER2_GOST } from '../../../../../modules/nf-core/gprofiler2/gost/main.nf' - -workflow test_gprofiler2_gost { - contrasts = [ [ id:'test', reference:'r', target:'t' ], 'test', 'r', 't' ] - input = [ - [ id:'test_r_t', reference:'r', target:'t' ], // meta map - file(params.test_data['mus_musculus']['genome']['deseq_results'], checkIfExists: true) - ] - - GPROFILER2_GOST ( - input, - [], - [] - ) -} - -workflow test_gprofiler2_gost_backgroundmatrix { - contrasts = [ [ id:'test', reference:'r', target:'t' ], 'test', 'r', 't' ] - input = [ - [ id:'test_r_t', reference:'r', target:'t' ], // meta map - file(params.test_data['mus_musculus']['genome']['deseq_results'], checkIfExists: true) - ] - ch_background = Channel.from(file(params.test_data['mus_musculus']['genome']['rnaseq_matrix'], checkIfExists: true)) - - GPROFILER2_GOST ( - input, - [], - ch_background - ) -} diff --git a/tests/modules/nf-core/gprofiler2/gost/nextflow.config b/tests/modules/nf-core/gprofiler2/gost/nextflow.config deleted file mode 100644 index 1ace5afdd2f..00000000000 --- a/tests/modules/nf-core/gprofiler2/gost/nextflow.config +++ /dev/null @@ -1,13 +0,0 @@ -process { - - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - - withName: 'test_gprofiler2_gost:GPROFILER2_GOST' { - ext.args = { "--organism mmusculus --sources \"CORUM,REAC\" --palette_name Greens" } - } - - withName: 'test_gprofiler2_gost_backgroundmatrix:GPROFILER2_GOST' { - ext.args = { "--organism mmusculus --sources \"KEGG\" --significant false --background_column gene_id" } - } - -} \ No newline at end of file diff --git a/tests/modules/nf-core/gprofiler2/gost/test.yml b/tests/modules/nf-core/gprofiler2/gost/test.yml deleted file mode 100644 index ee223a2103b..00000000000 --- a/tests/modules/nf-core/gprofiler2/gost/test.yml +++ /dev/null @@ -1,47 +0,0 @@ -- name: gprofiler2 gost test_gprofiler2_gost - command: nextflow run ./tests/modules/nf-core/gprofiler2/gost -entry test_gprofiler2_gost -c ./tests/config/nextflow.config - tags: - - gprofiler2 - - gprofiler2/gost - files: - - path: output/gprofiler2/R_sessionInfo.log - contains: ["ggplot2_3.4.3", "gprofiler2_0.2.2"] - - path: output/gprofiler2/test_r_t.gprofiler2.CORUM.sub_enriched_pathways.png - - path: output/gprofiler2/test_r_t.gprofiler2.CORUM.sub_enriched_pathways.tsv - md5sum: b0619e5e1424ac18f6cb52dac87248aa - - path: output/gprofiler2/test_r_t.gprofiler2.REAC.sub_enriched_pathways.png - - path: output/gprofiler2/test_r_t.gprofiler2.REAC.sub_enriched_pathways.tsv - md5sum: 0e4f2887e74e00fe8d0ad93771342f4b - - path: output/gprofiler2/test_r_t.gprofiler2.all_enriched_pathways.tsv - md5sum: bbfa48be9e30e9898ecf63709bb99331 - - path: output/gprofiler2/test_r_t.gprofiler2.gostplot.html - contains: - [ - "Neurotransmitter receptors and postsynaptic signal transmission", - "The phototransduction cascade", - "Muscle contraction", - ] - - path: output/gprofiler2/test_r_t.gprofiler2.gostplot.png - - path: output/gprofiler2/gprofiler_full_mmusculus.CORUM_REAC.ENSG_filtered.gmt - md5sum: 455f9b94af175e78cc551cf7f79c3203 - - path: output/gprofiler2/test_r_t.gprofiler2.gost_results.rds - - path: output/gprofiler2/versions.yml - -- name: gprofiler2 gost test_gprofiler2_gost_backgroundmatrix - command: nextflow run ./tests/modules/nf-core/gprofiler2/gost -entry test_gprofiler2_gost_backgroundmatrix -c ./tests/config/nextflow.config - tags: - - gprofiler2 - - gprofiler2/gost - files: - - path: output/gprofiler2/R_sessionInfo.log - contains: ["ggplot2_3.4.3", "gprofiler2_0.2.2"] - - path: output/gprofiler2/test_r_t.gprofiler2.KEGG.sub_enriched_pathways.png - - path: output/gprofiler2/test_r_t.gprofiler2.KEGG.sub_enriched_pathways.tsv - md5sum: fa7c0457da981ca00b209fadafe419bd - - path: output/gprofiler2/test_r_t.gprofiler2.all_enriched_pathways.tsv - md5sum: fd611ba563ed8ec2c27dbf8d99b869dd - - path: output/gprofiler2/test_r_t.gprofiler2.gostplot.html # This plot is empty, will not add contains - - path: output/gprofiler2/test_r_t.gprofiler2.gostplot.png - - path: output/gprofiler2/gprofiler_full_mmusculus.KEGG.ENSG_filtered.gmt - - path: output/gprofiler2/test_r_t.gprofiler2.gost_results.rds - - path: output/gprofiler2/versions.yml diff --git a/tests/modules/nf-core/gridss/gridssgenerateponbedpe/main.nf b/tests/modules/nf-core/gridss/gridssgenerateponbedpe/main.nf deleted file mode 100644 index bb2f366e435..00000000000 --- a/tests/modules/nf-core/gridss/gridssgenerateponbedpe/main.nf +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env nextflow - -nextflow.enable.dsl = 2 - -include { GRIDSS_GRIDSS } from '../../../../../modules/nf-core/gridss/gridss/main.nf' -include { BWA_INDEX } from '../../../../../modules/nf-core/bwa/index/main.nf' -include { GRIDSS_GRIDSSGENERATEPONBEDPE } from '../../../../../modules/nf-core/gridss/gridssgenerateponbedpe/main.nf' - - -workflow test_gridss_gridssgenerateponbedpe { - - input = [ - [ id:'test' ], // meta map - file(params.test_data['homo_sapiens']['illumina']['test_paired_end_sorted_bam'], checkIfExists: true), - [] - ] - fasta = [[id:'fasta'],file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true)] - fasta_fai = [[id:'fasta_fai'],file(params.test_data['homo_sapiens']['genome']['genome_fasta_fai'], checkIfExists: true)] - - bwa_index = BWA_INDEX(fasta).index - - GRIDSS_GRIDSS(input,fasta,fasta_fai,bwa_index) - input2 = GRIDSS_GRIDSS.out.vcf.map{ it -> tuple( it[0], it[1], [],[] )} - GRIDSS_GRIDSSGENERATEPONBEDPE ( input2,fasta,fasta_fai,bwa_index ) -} diff --git a/tests/modules/nf-core/gridss/gridssgenerateponbedpe/nextflow.config b/tests/modules/nf-core/gridss/gridssgenerateponbedpe/nextflow.config deleted file mode 100644 index 6788fda1b90..00000000000 --- a/tests/modules/nf-core/gridss/gridssgenerateponbedpe/nextflow.config +++ /dev/null @@ -1,14 +0,0 @@ -process { - - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - withName: BWA_INDEX { - publishDir = [ - ext.prefix = 'genome.fasta' - ] - } - withName: GRIDSS_GRIDSSGENERATEPONBEDPE { - publishDir = [ - ext.args = 'NORMAL_ORDINAL=1 MIN_BREAKPOINT_QUAL=10' - ] - } -} diff --git a/tests/modules/nf-core/gridss/gridssgenerateponbedpe/test.yml b/tests/modules/nf-core/gridss/gridssgenerateponbedpe/test.yml deleted file mode 100644 index bb3e57781f7..00000000000 --- a/tests/modules/nf-core/gridss/gridssgenerateponbedpe/test.yml +++ /dev/null @@ -1,10 +0,0 @@ -- name: gridss gridssgenerateponbedpe test_gridss_gridssgenerateponbedpe - command: nextflow run ./tests/modules/nf-core/gridss/gridssgenerateponbedpe -entry test_gridss_gridssgenerateponbedpe -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/gridss/gridssgenerateponbedpe/nextflow.config - tags: - - gridss - - gridss/gridssgenerateponbedpe - files: - - path: output/gridss/test.vcf.gz - md5sum: 6ac04867c8cbc05dc2d6ff9921df721e - - path: output/gridss/test.vcf.gz.assembly.bam - - path: output/gridss/versions.yml diff --git a/tests/modules/nf-core/gridss/gridsssomaticfilter/main.nf b/tests/modules/nf-core/gridss/gridsssomaticfilter/main.nf deleted file mode 100644 index 654092e964c..00000000000 --- a/tests/modules/nf-core/gridss/gridsssomaticfilter/main.nf +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/env nextflow - -nextflow.enable.dsl = 2 - -include { BWA_INDEX } from '../../../../../modules/nf-core/bwa/index/main.nf' -include { GRIDSS_GRIDSS } from '../../../../../modules/nf-core/gridss/gridss/main.nf' -include { GRIDSS_GRIDSSSOMATICFILTER } from '../../../../../modules/nf-core/gridss/gridsssomaticfilter/main.nf' - -workflow test_gridss_gridsssomaticfilter { - - input = [ - [ id:'test' ], // meta map - file(params.test_data['homo_sapiens']['illumina']['test2_paired_end_sorted_bam'], checkIfExists: true), - [] - ] - fasta = [[id:'fasta'],file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true)] - fasta_fai = [[id:'fasta_fai'],file(params.test_data['homo_sapiens']['genome']['genome_fasta_fai'], checkIfExists: true)] - - bwa_index = BWA_INDEX(fasta).index - - GRIDSS_GRIDSS( - input, - fasta, - fasta_fai, - bwa_index - ) - - GRIDSS_GRIDSSSOMATICFILTER ( - GRIDSS_GRIDSS.out.vcf, - [[],[]] - ) -} diff --git a/tests/modules/nf-core/gridss/gridsssomaticfilter/nextflow.config b/tests/modules/nf-core/gridss/gridsssomaticfilter/nextflow.config deleted file mode 100644 index 4707b6ce4c4..00000000000 --- a/tests/modules/nf-core/gridss/gridsssomaticfilter/nextflow.config +++ /dev/null @@ -1,16 +0,0 @@ -process { - - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - - withName: BWA_INDEX { - publishDir = [ - ext.prefix = 'genome.fasta' - ] - } - withName: GRIDSS_GRIDSSSOMATICFILTER { - publishDir = [ - ext.args = '--normalordinal 0' - ] - } - -} diff --git a/tests/modules/nf-core/gridss/gridsssomaticfilter/test.yml b/tests/modules/nf-core/gridss/gridsssomaticfilter/test.yml deleted file mode 100644 index 53ed8676425..00000000000 --- a/tests/modules/nf-core/gridss/gridsssomaticfilter/test.yml +++ /dev/null @@ -1,10 +0,0 @@ -- name: gridss gridsssomaticfilter test_gridss_gridsssomaticfilter - command: nextflow run ./tests/modules/nf-core/gridss/gridsssomaticfilter -entry test_gridss_gridsssomaticfilter -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/gridss/gridsssomaticfilter/nextflow.config - tags: - - gridss - - gridss/gridsssomaticfilter - files: - - path: output/gridss/test.vcf.gz - md5sum: 0f398e459ea7f2d3fe622c40b2e4c609 - - path: output/gridss/test.vcf.gz.assembly.bam - - path: output/gridss/versions.yml diff --git a/tests/modules/nf-core/krakenuniq/build/main.nf b/tests/modules/nf-core/krakenuniq/build/main.nf deleted file mode 100644 index 63fba4866cb..00000000000 --- a/tests/modules/nf-core/krakenuniq/build/main.nf +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/env nextflow - -nextflow.enable.dsl = 2 - -include { KRAKENUNIQ_DOWNLOAD } from '../../../../../modules/nf-core/krakenuniq/download/main.nf' -include { KRAKENUNIQ_BUILD } from '../../../../../modules/nf-core/krakenuniq/build/main.nf' - -workflow test_krakenuniq_build { - - ch_fastas = Channel.fromPath(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true) - ch_seqid2mapid = Channel.fromPath(params.test_data['sarscov2']['metagenome']['seqid2taxid_map'], checkIfExists: true) - KRAKENUNIQ_DOWNLOAD ( 'taxonomy' ) - - ch_input = ch_fastas - .combine(KRAKENUNIQ_DOWNLOAD.out.output) - .combine(ch_seqid2mapid) - .map { - fna, tax, map -> - - [ [id: "customdb"], fna, tax, map ] - } - - KRAKENUNIQ_BUILD ( ch_input ) -} diff --git a/tests/modules/nf-core/krakenuniq/build/nextflow.config b/tests/modules/nf-core/krakenuniq/build/nextflow.config deleted file mode 100644 index 113299318e5..00000000000 --- a/tests/modules/nf-core/krakenuniq/build/nextflow.config +++ /dev/null @@ -1,9 +0,0 @@ -process { - - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - - withName: 'KRAKENUNIQ_BUILD' { - ext.args ="--work-on-disk" - } - -} diff --git a/tests/modules/nf-core/krakenuniq/build/test.yml b/tests/modules/nf-core/krakenuniq/build/test.yml deleted file mode 100644 index f36f385f174..00000000000 --- a/tests/modules/nf-core/krakenuniq/build/test.yml +++ /dev/null @@ -1,30 +0,0 @@ -- name: krakenuniq build test_krakenuniq_build - command: nextflow run ./tests/modules/nf-core/krakenuniq/build -entry test_krakenuniq_build -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/krakenuniq/build/nextflow.config - tags: - - krakenuniq/build - - krakenuniq - files: - - path: output/krakenuniq/customdb/database-build.log - contains: ["-d database.jdb -o database0.kdb.tmp -i database.idx"] - - path: output/krakenuniq/customdb/database.idx - md5sum: db9e8cd1f75cdedd70dd346b70658790 - - path: output/krakenuniq/customdb/database.jdb - md5sum: 8b4a9b8cbcacec61fc6a220f0cec59bd - - path: output/krakenuniq/customdb/database.kdb - md5sum: c6853c5d2f3a4a7ad05c2973a993b9b8 - - path: output/krakenuniq/customdb/database.kdb.counts - md5sum: a82149480a435210ec1e870f06b6cdb3 - - path: output/krakenuniq/customdb/database.kraken.tsv - md5sum: 8aafacd89a6aac98aaf512df0a7493d1 - - path: output/krakenuniq/customdb/database.report.tsv - contains: ["% reads taxReads kmers dup cov taxID rank taxName"] - - path: output/krakenuniq/customdb/database0.kdb - md5sum: c6853c5d2f3a4a7ad05c2973a993b9b8 - - path: output/krakenuniq/customdb/library-files.txt - md5sum: 8a9817d2de8465eb436aa3aa8696a717 - - path: output/krakenuniq/customdb/library/genome.fasta - md5sum: 6e9fe4042a72f2345f644f239272b7e6 - - path: output/krakenuniq/customdb/seqid2taxid.map - md5sum: fe738f2333d57dde0db32239c04a93b8 - - path: output/krakenuniq/customdb/taxDB - md5sum: 84213970a13958e612a0eb0f4681fbc4 diff --git a/tests/modules/nf-core/krakenuniq/download/main.nf b/tests/modules/nf-core/krakenuniq/download/main.nf deleted file mode 100644 index 418561dc320..00000000000 --- a/tests/modules/nf-core/krakenuniq/download/main.nf +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/env nextflow - -nextflow.enable.dsl = 2 - -include { KRAKENUNIQ_DOWNLOAD } from '../../../../../modules/nf-core/krakenuniq/download/main.nf' - -workflow test_krakenuniq_download { - - input = "taxonomy" - - KRAKENUNIQ_DOWNLOAD ( input ) -} diff --git a/tests/modules/nf-core/krakenuniq/download/nextflow.config b/tests/modules/nf-core/krakenuniq/download/nextflow.config deleted file mode 100644 index 50f50a7a357..00000000000 --- a/tests/modules/nf-core/krakenuniq/download/nextflow.config +++ /dev/null @@ -1,5 +0,0 @@ -process { - - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - -} \ No newline at end of file diff --git a/tests/modules/nf-core/krakenuniq/download/test.yml b/tests/modules/nf-core/krakenuniq/download/test.yml deleted file mode 100644 index 63fdcfc4cae..00000000000 --- a/tests/modules/nf-core/krakenuniq/download/test.yml +++ /dev/null @@ -1,12 +0,0 @@ -- name: krakenuniq download test_krakenuniq_download - command: nextflow run ./tests/modules/nf-core/krakenuniq/download -entry test_krakenuniq_download -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/krakenuniq/download/nextflow.config - tags: - - krakenuniq - - krakenuniq/download - files: - - path: output/krakenuniq/taxonomy/names.dmp - contains: ["scientific name"] - - path: output/krakenuniq/taxonomy/nodes.dmp - contains: ["superkingdom"] - - path: output/krakenuniq/taxonomy/taxdump.tar.gz - - path: output/krakenuniq/taxonomy/timestamp diff --git a/tests/modules/nf-core/mmseqs/easysearch/main.nf b/tests/modules/nf-core/mmseqs/easysearch/main.nf deleted file mode 100644 index 41ecf4f87db..00000000000 --- a/tests/modules/nf-core/mmseqs/easysearch/main.nf +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/env nextflow - -nextflow.enable.dsl = 2 - -include { MMSEQS_EASYSEARCH } from '../../../../../modules/nf-core/mmseqs/easysearch/main.nf' -include { MMSEQS_CREATEDB as MMSEQS_CREATEDB_TARGET } from '../../../../../modules/nf-core/mmseqs/createdb/main.nf' - - -workflow test_mmseqs_easysearch { - - input_query = [ - [ id:'test_query', single_end:true ], // meta map - file(params.test_data['sarscov2']['illumina']['contigs_fasta'], checkIfExists: true) - ] - - - input_target = [ - [ id:'test_target', single_end:true ], // meta map - file(params.test_data['sarscov2']['illumina']['scaffolds_fasta'], checkIfExists: true) - ] - ch_target_db = MMSEQS_CREATEDB_TARGET( input_target ).db - - MMSEQS_EASYSEARCH ( input_query, ch_target_db ) -} diff --git a/tests/modules/nf-core/mmseqs/easysearch/nextflow.config b/tests/modules/nf-core/mmseqs/easysearch/nextflow.config deleted file mode 100644 index 9b0cc3afaac..00000000000 --- a/tests/modules/nf-core/mmseqs/easysearch/nextflow.config +++ /dev/null @@ -1,12 +0,0 @@ -process { - - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - - withName: MMSEQS_CREATEDB_TARGET { - publishDir = [ enabled: false ] - } - - withName: MMSEQS_EASYSEARCH { - ext.args = '--remove-tmp-files 1 --search-type 2' - } -} \ No newline at end of file diff --git a/tests/modules/nf-core/mmseqs/easysearch/test.yml b/tests/modules/nf-core/mmseqs/easysearch/test.yml deleted file mode 100644 index d15644212d8..00000000000 --- a/tests/modules/nf-core/mmseqs/easysearch/test.yml +++ /dev/null @@ -1,9 +0,0 @@ -- name: mmseqs easysearch test_mmseqs_easysearch - command: nextflow run ./tests/modules/nf-core/mmseqs/easysearch -entry test_mmseqs_easysearch -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/mmseqs/easysearch/nextflow.config - tags: - - mmseqs - - mmseqs/easysearch - files: - - path: output/mmseqs/test_query.tsv - md5sum: 98a6e138ad41ed04366808799fd6a4b8 - - path: output/mmseqs/versions.yml diff --git a/tests/modules/nf-core/mmseqs/search/main.nf b/tests/modules/nf-core/mmseqs/search/main.nf deleted file mode 100644 index 18942f951bb..00000000000 --- a/tests/modules/nf-core/mmseqs/search/main.nf +++ /dev/null @@ -1,23 +0,0 @@ -#!/usr/bin/env nextflow -nextflow.enable.dsl = 2 - -include { MMSEQS_CREATEDB as MMSEQS_CREATEDB_QUERY } from '../../../../../modules/nf-core/mmseqs/createdb/main.nf' -include { MMSEQS_CREATEDB as MMSEQS_CREATEDB_TARGET } from '../../../../../modules/nf-core/mmseqs/createdb/main.nf' -include { MMSEQS_SEARCH } from '../../../../../modules/nf-core/mmseqs/search/main.nf' - -workflow test_mmseqs_search { - - input_query = [ - [ id:'test_query', single_end:true ], // meta map - file(params.test_data['sarscov2']['illumina']['contigs_fasta'], checkIfExists: true) - ] - ch_query_db = MMSEQS_CREATEDB_QUERY ( input_query ).db - - input_target = [ - [ id:'test_target', single_end:true ], // meta map - file(params.test_data['sarscov2']['illumina']['scaffolds_fasta'], checkIfExists: true) - ] - ch_target_db = MMSEQS_CREATEDB_TARGET( input_target ).db - - MMSEQS_SEARCH ( ch_query_db, ch_target_db ) -} diff --git a/tests/modules/nf-core/mmseqs/search/nextflow.config b/tests/modules/nf-core/mmseqs/search/nextflow.config deleted file mode 100644 index 38bdbf37d1c..00000000000 --- a/tests/modules/nf-core/mmseqs/search/nextflow.config +++ /dev/null @@ -1,17 +0,0 @@ -process { - - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - - withName: MMSEQS_SEARCH { - ext.prefix = "test_output_search" - ext.args = '--remove-tmp-files 1 --search-type 2' - } - - withName: MMSEQS_CREATEDB_TARGET { - publishDir = [ enabled: false ] - } - - withName: MMSEQS_CREATEDB_QUERY { - publishDir = [ enabled: false ] - } -} diff --git a/tests/modules/nf-core/mmseqs/search/test.yml b/tests/modules/nf-core/mmseqs/search/test.yml deleted file mode 100644 index 91bbfde3938..00000000000 --- a/tests/modules/nf-core/mmseqs/search/test.yml +++ /dev/null @@ -1,11 +0,0 @@ -- name: mmseqs search test_mmseqs_search - command: nextflow run ./tests/modules/nf-core/mmseqs/search -entry test_mmseqs_search -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/mmseqs/search/nextflow.config - tags: - - mmseqs - - mmseqs/search - files: - - path: output/mmseqs/test_output_search/test_output_search.0 - - path: output/mmseqs/test_output_search/test_output_search.1 - - path: output/mmseqs/test_output_search/test_output_search.dbtype - - path: output/mmseqs/test_output_search/test_output_search.index - - path: output/mmseqs/versions.yml diff --git a/tests/modules/nf-core/mmseqs/tsv2exprofiledb/main.nf b/tests/modules/nf-core/mmseqs/tsv2exprofiledb/main.nf deleted file mode 100644 index c04092d863a..00000000000 --- a/tests/modules/nf-core/mmseqs/tsv2exprofiledb/main.nf +++ /dev/null @@ -1,15 +0,0 @@ -#!/usr/bin/env nextflow - -nextflow.enable.dsl = 2 - -include { UNTAR } from '../../../../../modules/nf-core/untar/main.nf' -include { MMSEQS_TSV2EXPROFILEDB } from '../../../../../modules/nf-core/mmseqs/tsv2exprofiledb/main.nf' - -workflow test_mmseqs_tsv2exprofiledb { - - db = file(params.test_data['sarscov2']['genome']['mmseqs_tar_gz'], checkIfExists: true) - - ch_db = UNTAR ( [[:], db] ).untar - .map { it[1] } - MMSEQS_TSV2EXPROFILEDB ( ch_db ) -} diff --git a/tests/modules/nf-core/mmseqs/tsv2exprofiledb/nextflow.config b/tests/modules/nf-core/mmseqs/tsv2exprofiledb/nextflow.config deleted file mode 100644 index d5ca1bd6531..00000000000 --- a/tests/modules/nf-core/mmseqs/tsv2exprofiledb/nextflow.config +++ /dev/null @@ -1,9 +0,0 @@ -process { - - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - - withName: UNTAR { - publishDir = [ enabled: false ] - } - -} diff --git a/tests/modules/nf-core/mmseqs/tsv2exprofiledb/test.yml b/tests/modules/nf-core/mmseqs/tsv2exprofiledb/test.yml deleted file mode 100644 index 5d98c44e45e..00000000000 --- a/tests/modules/nf-core/mmseqs/tsv2exprofiledb/test.yml +++ /dev/null @@ -1,105 +0,0 @@ -- name: mmseqs tsv2exprofiledb test_mmseqs_tsv2exprofiledb - command: nextflow run ./tests/modules/nf-core/mmseqs/tsv2exprofiledb -entry test_mmseqs_tsv2exprofiledb -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/mmseqs/tsv2exprofiledb/nextflow.config - tags: - - mmseqs/tsv2exprofiledb - - mmseqs - files: - - path: output/mmseqs/mmseqs/mmseqs - md5sum: a5ba5a88d2995da3522dddb4abca07ef - - path: output/mmseqs/mmseqs/mmseqs.dbtype - md5sum: f1d3ff8443297732862df21dc4e57262 - - path: output/mmseqs/mmseqs/mmseqs.fasta - md5sum: b40600ad3be77f076df716e6cf99c64c - - path: output/mmseqs/mmseqs/mmseqs.index - md5sum: c012bdab1c61eeafcb99d1b26650f3d0 - - path: output/mmseqs/mmseqs/mmseqs.lookup - md5sum: fa898551a6b303614ae6e29c237b7fc6 - - path: output/mmseqs/mmseqs/mmseqs.source - md5sum: 16bef02c30aadbfa8d035596502f0aa2 - - path: output/mmseqs/mmseqs/mmseqs.tsv - md5sum: 4e7ba50ce2879660dc6595286bf0d097 - - path: output/mmseqs/mmseqs/mmseqs_aln.0 - md5sum: 043e7e17756de6492a673c4b8c164892 - - path: output/mmseqs/mmseqs/mmseqs_aln.2 - md5sum: 41b5ec081780c45020674d12e57b927b - - path: output/mmseqs/mmseqs/mmseqs_aln.7 - md5sum: f1601f96061757d9f73d0e79ad7af70b - - path: output/mmseqs/mmseqs/mmseqs_aln.dbtype - md5sum: cbe23d9655fccd4311acdd6261c81bd8 - - path: output/mmseqs/mmseqs/mmseqs_aln.index - md5sum: 9e17db59a56719569d20f72f0f48924d - - path: output/mmseqs/mmseqs/mmseqs_aln.tsv - md5sum: e6fc24b66126dec818f89491edb79fec - - path: output/mmseqs/mmseqs/mmseqs_clu.0 - md5sum: 86256b3bd5cd46a4ce865c477a381e08 - - path: output/mmseqs/mmseqs/mmseqs_clu.dbtype - md5sum: b9d9c6dbc098c97ae446f612efd8eafd - - path: output/mmseqs/mmseqs/mmseqs_clu.index - md5sum: a0b78f31aee2c327d72f32919814baf1 - - path: output/mmseqs/mmseqs/mmseqs_db.dbtype - md5sum: 152afd7bf4dbe26f85032eee0269201a - - path: output/mmseqs/mmseqs/mmseqs_db.index - md5sum: 41ca8fb87475481709909380ec07fb00 - - path: output/mmseqs/mmseqs/mmseqs_db_aln.dbtype - md5sum: 596b18eb7c7e96754c16d5dac99ffea7 - - path: output/mmseqs/mmseqs/mmseqs_db_aln.index - md5sum: 67199af9a654fd0bc54d52333f7c41a7 - - path: output/mmseqs/mmseqs/mmseqs_db_h - md5sum: 7133e5a17c0c7a16e5a53748bb2bdff2 - - path: output/mmseqs/mmseqs/mmseqs_db_h.dbtype - md5sum: 740bab4f9ec8808aedb68d6b1281aeb2 - - path: output/mmseqs/mmseqs/mmseqs_db_h.index - md5sum: c292d4dbfd6579d9ad6c94882a2578d0 - - path: output/mmseqs/mmseqs/mmseqs_db_seq.dbtype - md5sum: 152afd7bf4dbe26f85032eee0269201a - - path: output/mmseqs/mmseqs/mmseqs_db_seq.index - md5sum: 41ca8fb87475481709909380ec07fb00 - - path: output/mmseqs/mmseqs/mmseqs_db_seq_h - md5sum: 7133e5a17c0c7a16e5a53748bb2bdff2 - - path: output/mmseqs/mmseqs/mmseqs_db_seq_h.dbtype - md5sum: 740bab4f9ec8808aedb68d6b1281aeb2 - - path: output/mmseqs/mmseqs/mmseqs_db_seq_h.index - md5sum: c292d4dbfd6579d9ad6c94882a2578d0 - - path: output/mmseqs/mmseqs/mmseqs_h - md5sum: 2b2cb13de706b3bb48a38942d851f452 - - path: output/mmseqs/mmseqs/mmseqs_h.dbtype - md5sum: 740bab4f9ec8808aedb68d6b1281aeb2 - - path: output/mmseqs/mmseqs/mmseqs_h.index - md5sum: 0040e6a02964914a87ef1efbe9011cbf - - path: output/mmseqs/mmseqs/mmseqs_h.tsv - md5sum: 8c733b4ef72b8c470ac30537cf6981bd - - path: output/mmseqs/mmseqs/mmseqs_profile - md5sum: 6c29ffea085c8c78e97533f9bcbedd98 - - path: output/mmseqs/mmseqs/mmseqs_profile.dbtype - md5sum: f2dd0dedb2c260419ece4a9e03b2e828 - - path: output/mmseqs/mmseqs/mmseqs_profile.index - md5sum: e09d927ca8d4779b7cfb937f435cf7d3 - - path: output/mmseqs/mmseqs/mmseqs_profile.lookup - md5sum: fa898551a6b303614ae6e29c237b7fc6 - - path: output/mmseqs/mmseqs/mmseqs_profile.source - md5sum: 16bef02c30aadbfa8d035596502f0aa2 - - path: output/mmseqs/mmseqs/mmseqs_profile_h - md5sum: 2b2cb13de706b3bb48a38942d851f452 - - path: output/mmseqs/mmseqs/mmseqs_profile_h.dbtype - md5sum: 740bab4f9ec8808aedb68d6b1281aeb2 - - path: output/mmseqs/mmseqs/mmseqs_profile_h.index - md5sum: 0040e6a02964914a87ef1efbe9011cbf - - path: output/mmseqs/mmseqs/mmseqs_seq - md5sum: e6c2c906a7ced527a75c7b175776f0b1 - - path: output/mmseqs/mmseqs/mmseqs_seq.dbtype - md5sum: 4352d88a78aa39750bf70cd6f27bcaa5 - - path: output/mmseqs/mmseqs/mmseqs_seq.index - md5sum: 09f8cf12406b814198156e56f5acd8dc - - path: output/mmseqs/mmseqs/mmseqs_seq.lookup - md5sum: fa898551a6b303614ae6e29c237b7fc6 - - path: output/mmseqs/mmseqs/mmseqs_seq.source - md5sum: 16bef02c30aadbfa8d035596502f0aa2 - - path: output/mmseqs/mmseqs/mmseqs_seq.tsv - md5sum: fcc20038fa951bc085463bb49ffa5e25 - - path: output/mmseqs/mmseqs/mmseqs_seq_h - md5sum: 2b2cb13de706b3bb48a38942d851f452 - - path: output/mmseqs/mmseqs/mmseqs_seq_h.dbtype - md5sum: 740bab4f9ec8808aedb68d6b1281aeb2 - - path: output/mmseqs/mmseqs/mmseqs_seq_h.index - md5sum: 0040e6a02964914a87ef1efbe9011cbf - - path: output/mmseqs/versions.yml diff --git a/tests/modules/nf-core/shinyngs/staticdifferential/main.nf b/tests/modules/nf-core/shinyngs/staticdifferential/main.nf deleted file mode 100644 index 93a9a5a1ef1..00000000000 --- a/tests/modules/nf-core/shinyngs/staticdifferential/main.nf +++ /dev/null @@ -1,37 +0,0 @@ -#!/usr/bin/env nextflow - -nextflow.enable.dsl = 2 - -include { SHINYNGS_STATICDIFFERENTIAL } from '../../../../../modules/nf-core/shinyngs/staticdifferential/main.nf' - -workflow test_shinyngs_staticdifferential { - - expression_sample_sheet = file(params.test_data['mus_musculus']['genome']['rnaseq_samplesheet'], checkIfExists: true) - expression_feature_meta = file(params.test_data['mus_musculus']['genome']['rnaseq_genemeta'], checkIfExists: true) - expression_matrix_file = file(params.test_data['mus_musculus']['genome']['rnaseq_matrix'], checkIfExists: true) - expression_differential = file(params.test_data['mus_musculus']['genome']['deseq_results'], checkIfExists: true) - - ch_differential = [ [ "id":"hND6_vs_mCherry", "reference":"mCherry", "target":"hND6" ], expression_differential ] - ch_feature_obs_matrix = [ [ "id":"SRP254919" ], expression_sample_sheet, expression_feature_meta, expression_matrix_file ] - - SHINYNGS_STATICDIFFERENTIAL ( - ch_differential, - ch_feature_obs_matrix - ) -} - -workflow test_shinyngs_staticdifferential_html { - - expression_sample_sheet = file(params.test_data['mus_musculus']['genome']['rnaseq_samplesheet'], checkIfExists: true) - expression_feature_meta = file(params.test_data['mus_musculus']['genome']['rnaseq_genemeta'], checkIfExists: true) - expression_matrix_file = file(params.test_data['mus_musculus']['genome']['rnaseq_matrix'], checkIfExists: true) - expression_differential = file(params.test_data['mus_musculus']['genome']['deseq_results'], checkIfExists: true) - - ch_differential = [ [ "id":"hND6_vs_mCherry", "reference":"mCherry", "target":"hND6" ], expression_differential ] - ch_feature_obs_matrix = [ [ "id":"SRP254919" ], expression_sample_sheet, expression_feature_meta, expression_matrix_file ] - - SHINYNGS_STATICDIFFERENTIAL ( - ch_differential, - ch_feature_obs_matrix - ) -} diff --git a/tests/modules/nf-core/shinyngs/staticdifferential/nextflow.config b/tests/modules/nf-core/shinyngs/staticdifferential/nextflow.config deleted file mode 100644 index 76af9440350..00000000000 --- a/tests/modules/nf-core/shinyngs/staticdifferential/nextflow.config +++ /dev/null @@ -1,13 +0,0 @@ -process { - - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - - withName: 'test_shinyngs_staticdifferential:SHINYNGS_STATICDIFFERENTIAL' { - ext.prefix = { "${meta.id}_test" } - ext.args = { "--reference_level $meta.reference --treatment_level $meta.target" } - } - withName: 'test_shinyngs_staticdifferential_html:SHINYNGS_STATICDIFFERENTIAL' { - ext.prefix = { "${meta.id}_test" } - ext.args = { "--reference_level $meta.reference --treatment_level $meta.target --write_html" } - } -} diff --git a/tests/modules/nf-core/shinyngs/staticdifferential/test.yml b/tests/modules/nf-core/shinyngs/staticdifferential/test.yml deleted file mode 100644 index 2ba4e9a3534..00000000000 --- a/tests/modules/nf-core/shinyngs/staticdifferential/test.yml +++ /dev/null @@ -1,18 +0,0 @@ -- name: shinyngs staticdifferential test_shinyngs_staticdifferential - command: nextflow run ./tests/modules/nf-core/shinyngs/staticdifferential -entry test_shinyngs_staticdifferential -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/shinyngs/staticdifferential/nextflow.config - tags: - - shinyngs/staticdifferential - - shinyngs - files: - - path: output/shinyngs/hND6_vs_mCherry_test/png/volcano.png - -- name: shinyngs staticdifferential test_shinyngs_staticdifferential_html - command: nextflow run ./tests/modules/nf-core/shinyngs/staticdifferential -entry test_shinyngs_staticdifferential_html -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/shinyngs/staticdifferential/nextflow.config - tags: - - shinyngs/staticdifferential - - shinyngs - files: - - path: output/shinyngs/hND6_vs_mCherry_test/html/volcano.html - contains: - ["-4.0303380084000002,-0.062830270600000002,-0.36022681569999998,-0.60824564309999996", "higher in mCherry"] - - path: output/shinyngs/hND6_vs_mCherry_test/png/volcano.png diff --git a/tests/modules/nf-core/shinyngs/validatefomcomponents/main.nf b/tests/modules/nf-core/shinyngs/validatefomcomponents/main.nf deleted file mode 100644 index 25c8b039f56..00000000000 --- a/tests/modules/nf-core/shinyngs/validatefomcomponents/main.nf +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/env nextflow - -nextflow.enable.dsl = 2 - -include { SHINYNGS_VALIDATEFOMCOMPONENTS } from '../../../../../modules/nf-core/shinyngs/validatefomcomponents/main.nf' - -workflow test_shinyngs_validatefomcomponents { - - expression_sample_sheet = file(params.test_data['mus_musculus']['genome']['rnaseq_samplesheet'], checkIfExists: true) - expression_matrix_file = file(params.test_data['mus_musculus']['genome']['rnaseq_matrix'], checkIfExists: true) - expression_feature_meta = file(params.test_data['mus_musculus']['genome']['rnaseq_genemeta'], checkIfExists: true) - expression_contrasts = file(params.test_data['mus_musculus']['genome']['rnaseq_contrasts'], checkIfExists: true) - - SHINYNGS_VALIDATEFOMCOMPONENTS ( - [ [ "id":"SRP254919" ], expression_sample_sheet, expression_matrix_file ], - [ [ "id":"SRP254919" ], expression_feature_meta ], - [ [ "id":"SRP254919" ], expression_contrasts ] - ) -} - -workflow test_shinyngs_validatefomcomponents_no_feature { - - expression_sample_sheet = file(params.test_data['mus_musculus']['genome']['rnaseq_samplesheet'], checkIfExists: true) - expression_matrix_file = file(params.test_data['mus_musculus']['genome']['rnaseq_matrix'], checkIfExists: true) - expression_contrasts = file(params.test_data['mus_musculus']['genome']['rnaseq_contrasts'], checkIfExists: true) - - SHINYNGS_VALIDATEFOMCOMPONENTS ( - [ [ "id":"SRP254919" ], expression_sample_sheet, expression_matrix_file ], - [ [ "id":"SRP254919" ], [] ], - [ [ "id":"SRP254919" ], expression_contrasts ] - ) -} diff --git a/tests/modules/nf-core/shinyngs/validatefomcomponents/nextflow.config b/tests/modules/nf-core/shinyngs/validatefomcomponents/nextflow.config deleted file mode 100644 index 50f50a7a357..00000000000 --- a/tests/modules/nf-core/shinyngs/validatefomcomponents/nextflow.config +++ /dev/null @@ -1,5 +0,0 @@ -process { - - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - -} \ No newline at end of file diff --git a/tests/modules/nf-core/shinyngs/validatefomcomponents/test.yml b/tests/modules/nf-core/shinyngs/validatefomcomponents/test.yml deleted file mode 100644 index 300274dfd61..00000000000 --- a/tests/modules/nf-core/shinyngs/validatefomcomponents/test.yml +++ /dev/null @@ -1,27 +0,0 @@ -- name: shinyngs validatefomcomponents test_shinyngs_validatefomcomponents - command: nextflow run ./tests/modules/nf-core/shinyngs/validatefomcomponents -entry test_shinyngs_validatefomcomponents -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/shinyngs/validatefomcomponents/nextflow.config - tags: - - shinyngs/validatefomcomponents - - shinyngs - files: - - path: output/shinyngs/SRP254919/SRP254919.contrasts.contrasts_file.tsv - md5sum: e0980240404f48216aedb63b5094029f - - path: output/shinyngs/SRP254919/SRP254919.gene_meta.feature_metadata.tsv - md5sum: 9307606b9a78af90f85b06531d190b55 - - path: output/shinyngs/SRP254919/SRP254919.salmon.merged.gene_counts.top1000cov.assay.tsv - md5sum: 0c2224f6c33af1fe93c3b1382b3e05ce - - path: output/shinyngs/SRP254919/SRP254919.samplesheet.sample_metadata.tsv - md5sum: 7c5233cf34fd8eaf7071f21f6fcac7d8 - -- name: shinyngs validatefomcomponents test_shinyngs_validatefomcomponents_no_feature - command: nextflow run ./tests/modules/nf-core/shinyngs/validatefomcomponents -entry test_shinyngs_validatefomcomponents_no_feature -c ./tests/config/nextflow.config -c ./tests/modules/nf-core/shinyngs/validatefomcomponents/nextflow.config - tags: - - shinyngs/validatefomcomponents - - shinyngs - files: - - path: output/shinyngs/SRP254919/SRP254919.contrasts.contrasts_file.tsv - md5sum: e0980240404f48216aedb63b5094029f - - path: output/shinyngs/SRP254919/SRP254919.salmon.merged.gene_counts.top1000cov.assay.tsv - md5sum: 0c2224f6c33af1fe93c3b1382b3e05ce - - path: output/shinyngs/SRP254919/SRP254919.samplesheet.sample_metadata.tsv - md5sum: 7c5233cf34fd8eaf7071f21f6fcac7d8