From 03b60d3f4430b381bee9d83805010b8ac38b9da4 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Fri, 17 Apr 2026 20:16:07 +0000 Subject: [PATCH 01/29] migrate `ATLASGENEANNOTATIONMANIPULATION_GTF2FEATUREANNOTATION` to seqera containers --- .../gtf2featureannotation/main.nf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/nf-core/atlasgeneannotationmanipulation/gtf2featureannotation/main.nf b/modules/nf-core/atlasgeneannotationmanipulation/gtf2featureannotation/main.nf index 6b0e3e82121b..c3a1b0dc90c1 100644 --- a/modules/nf-core/atlasgeneannotationmanipulation/gtf2featureannotation/main.nf +++ b/modules/nf-core/atlasgeneannotationmanipulation/gtf2featureannotation/main.nf @@ -4,8 +4,8 @@ process ATLASGENEANNOTATIONMANIPULATION_GTF2FEATUREANNOTATION { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/atlas-gene-annotation-manipulation%3A1.1.1--hdfd78af_0': - 'biocontainers/atlas-gene-annotation-manipulation:1.1.1--hdfd78af_0' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/a0/a0dc845564dcc40319d4b76a9f7298fd83ccd9eb271153c688f41660cda7de0f/data': + 'community.wave.seqera.io/library/atlas-gene-annotation-manipulation:1.1.1--b9e8c32c92709512' }" input: tuple val(meta), path(gtf) From f3d486422d7519ac4b710e16c88d7f72d21fa714 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Fri, 17 Apr 2026 20:16:58 +0000 Subject: [PATCH 02/29] migrate `AFFY_JUSTRMA` to seqera containers --- modules/nf-core/affy/justrma/main.nf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/nf-core/affy/justrma/main.nf b/modules/nf-core/affy/justrma/main.nf index 4de23d18b24c..c09d9b4aa9aa 100644 --- a/modules/nf-core/affy/justrma/main.nf +++ b/modules/nf-core/affy/justrma/main.nf @@ -4,8 +4,8 @@ process AFFY_JUSTRMA { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/bioconductor-affy:1.78.0--r43ha9d7317_1': - 'biocontainers/bioconductor-affy:1.78.0--r43ha9d7317_1' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/62/62d22bc460807a1a4ded40e5b7a391aa6f2dac189d4153d684472d65333ca8d4/data': + 'community.wave.seqera.io/library/bioconductor-affy_r-base:dd8a5ecd6fc301b3' }" input: tuple val(meta), path(samplesheet), path(celfiles_dir) From 975739de5a9392c06b201ea420c273d3b6d0ddc3 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Mon, 20 Apr 2026 13:07:51 +0000 Subject: [PATCH 03/29] add `csvtk_join` seqera containers --- modules/nf-core/csvtk/join/main.nf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/nf-core/csvtk/join/main.nf b/modules/nf-core/csvtk/join/main.nf index 46c9f3009db8..f9f678427e4b 100644 --- a/modules/nf-core/csvtk/join/main.nf +++ b/modules/nf-core/csvtk/join/main.nf @@ -4,8 +4,8 @@ process CSVTK_JOIN { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/csvtk:0.31.0--h9ee0642_0': - 'biocontainers/csvtk:0.31.0--h9ee0642_0' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/c8/c818804e2e954ab8bc52c8bdc961539d2aa0a6b0f9517c3a6118d5a6c6a38669/data': + 'community.wave.seqera.io/library/csvtk:0.31.0--483af3c969467fe4' }" input: tuple val(meta), path(csv) From 6fdfbf0d28a7baf27db0ea7c1f3f257e160f257f Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Mon, 20 Apr 2026 13:22:34 +0000 Subject: [PATCH 04/29] add containers to CUSTOM_FILTERDIFFERENTIALTABLE --- modules/nf-core/custom/filterdifferentialtable/main.nf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/nf-core/custom/filterdifferentialtable/main.nf b/modules/nf-core/custom/filterdifferentialtable/main.nf index 98461f249d5c..cad5d3839fda 100644 --- a/modules/nf-core/custom/filterdifferentialtable/main.nf +++ b/modules/nf-core/custom/filterdifferentialtable/main.nf @@ -4,8 +4,8 @@ process CUSTOM_FILTERDIFFERENTIALTABLE { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/pandas:1.5.2' : - 'biocontainers/pandas:1.5.2' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/4d/4d7a62daafff045d7ea7739aac6e24d495ab94512525d73bcd865f5cf27cfe0f/data' : + 'community.wave.seqera.io/library/pandas:1.5.2--8aad09419bb2ac73' }" input: tuple val(meta), path(input_file) From 4a56e4a4044588e51ff4b5d9177ff48b76b4d81e Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Mon, 20 Apr 2026 13:25:37 +0000 Subject: [PATCH 05/29] add seqera containers to CUSTOM_TABULARTOGSEACHIP --- modules/nf-core/custom/tabulartogseachip/main.nf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/nf-core/custom/tabulartogseachip/main.nf b/modules/nf-core/custom/tabulartogseachip/main.nf index c0622cda518d..86fe994600ef 100644 --- a/modules/nf-core/custom/tabulartogseachip/main.nf +++ b/modules/nf-core/custom/tabulartogseachip/main.nf @@ -4,8 +4,8 @@ process CUSTOM_TABULARTOGSEACHIP { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/gawk:5.1.0' : - 'biocontainers/gawk:5.1.0' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/ca/cae75dbf13aabe63298c0acce8ccfa9bd65fe4b73dc5578da5a2e30867f7169f/data' : + 'community.wave.seqera.io/library/gawk:5.1.0--fa97c4ccf4cfbc4b' }" input: tuple val(meta), path(tabular) From 3abba1240c56d10838a76d828fca1cfb914c8e47 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Mon, 20 Apr 2026 13:35:40 +0000 Subject: [PATCH 06/29] add seqera containers to GEOQUERY_GETGEO --- modules/nf-core/geoquery/getgeo/main.nf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/nf-core/geoquery/getgeo/main.nf b/modules/nf-core/geoquery/getgeo/main.nf index ec32b43d5cf2..b985e7e018ed 100644 --- a/modules/nf-core/geoquery/getgeo/main.nf +++ b/modules/nf-core/geoquery/getgeo/main.nf @@ -4,8 +4,8 @@ process GEOQUERY_GETGEO { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/bioconductor-geoquery:2.70.0--r43hdfd78af_0' : - 'biocontainers/bioconductor-geoquery:2.70.0--r43hdfd78af_0' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/c3/c367777a9f3947bdfc464c3cec52d33d2862c5e909fa77e13455f8c1d177767b/data' : + 'community.wave.seqera.io/library/bioconductor-geoquery_r-base:8547a00389cd568a' }" input: tuple val(meta), val(querygse) From d00855890f666b5023681fdddc749fa6ce5f0f3c Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Mon, 20 Apr 2026 13:51:42 +0000 Subject: [PATCH 07/29] update to seqera containers proteus --- modules/nf-core/proteus/readproteingroups/main.nf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/nf-core/proteus/readproteingroups/main.nf b/modules/nf-core/proteus/readproteingroups/main.nf index c9ab04e59ea6..3d65ec89c760 100644 --- a/modules/nf-core/proteus/readproteingroups/main.nf +++ b/modules/nf-core/proteus/readproteingroups/main.nf @@ -4,8 +4,8 @@ process PROTEUS_READPROTEINGROUPS { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/mulled-v2-503e259d7d34ce533ce66c4c8871af4ab409db6d:1e504ef71c83943061a39b6260d826b988bfa56f-0': - 'biocontainers/mulled-v2-503e259d7d34ce533ce66c4c8871af4ab409db6d:1e504ef71c83943061a39b6260d826b988bfa56f-0' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/d0/d0008e2c0054e7cb33f3acef6ea417d157945a6f5774f6b7bdc1ef19cf95b249/data': + 'community.wave.seqera.io/library/bioconductor-limma_r-proteus-bartongroup_r-base_r-ggplot2_r-plotly:855c86e2407bbedb' }" input: tuple val(meta), path(samplesheet), path(intensities) From bccf768ee4e3e9c6203bffa64263ebc1074542f1 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Mon, 20 Apr 2026 13:53:52 +0000 Subject: [PATCH 08/29] migrate to seqera containers zip --- modules/nf-core/zip/main.nf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/nf-core/zip/main.nf b/modules/nf-core/zip/main.nf index d0fe8666f6bd..b830162623eb 100644 --- a/modules/nf-core/zip/main.nf +++ b/modules/nf-core/zip/main.nf @@ -4,8 +4,8 @@ process ZIP { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/p7zip:16.02' : - 'biocontainers/p7zip:16.02' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/17/171e3d1c631246d5afa0f01e78e0ff6a6ee78012dd17a7e8eccc871b65eac258/data' : + 'community.wave.seqera.io/library/p7zip:16.02--94efedc6cfea7db9' }" input: tuple val(meta), path(files, stageAs: "inputs/*") From 17d1b573f20256406c80afb101acff7c15639bbf Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Mon, 20 Apr 2026 15:06:16 +0000 Subject: [PATCH 09/29] migrate to topics template scripts --- modules/nf-core/geoquery/getgeo/main.nf | 2 +- modules/nf-core/proteus/readproteingroups/main.nf | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/nf-core/geoquery/getgeo/main.nf b/modules/nf-core/geoquery/getgeo/main.nf index b985e7e018ed..04ba5a1dc46e 100644 --- a/modules/nf-core/geoquery/getgeo/main.nf +++ b/modules/nf-core/geoquery/getgeo/main.nf @@ -14,7 +14,7 @@ process GEOQUERY_GETGEO { tuple val(meta), path("*.rds") , emit: rds tuple val(meta), path("*matrix.tsv") , emit: expression tuple val(meta), path("*annotation.tsv") , emit: annotation - path "versions.yml" , emit: versions + path "versions.yml" , emit: versions, topic: versions when: task.ext.when == null || task.ext.when diff --git a/modules/nf-core/proteus/readproteingroups/main.nf b/modules/nf-core/proteus/readproteingroups/main.nf index 3d65ec89c760..241ef3c06bd3 100644 --- a/modules/nf-core/proteus/readproteingroups/main.nf +++ b/modules/nf-core/proteus/readproteingroups/main.nf @@ -20,7 +20,7 @@ process PROTEUS_READPROTEINGROUPS { tuple val(meta), path("*raw_proteingroups_tab.tsv") , emit: raw_tab tuple val(meta), path("*normalized_proteingroups_tab.tsv") , emit: norm_tab tuple val(meta), path("*R_sessionInfo.log") , emit: session_info - path "versions.yml" , emit: versions + path "versions.yml" , emit: versions, topic: versions when: task.ext.when == null || task.ext.when From 67492186646c3c60c8fcaf47590d4f88bdd87d8e Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Mon, 20 Apr 2026 15:14:12 +0000 Subject: [PATCH 10/29] add versions to tabulartogseachip --- modules/nf-core/custom/tabulartogseachip/main.nf | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/modules/nf-core/custom/tabulartogseachip/main.nf b/modules/nf-core/custom/tabulartogseachip/main.nf index 86fe994600ef..7622c5eb6347 100644 --- a/modules/nf-core/custom/tabulartogseachip/main.nf +++ b/modules/nf-core/custom/tabulartogseachip/main.nf @@ -13,7 +13,7 @@ process CUSTOM_TABULARTOGSEACHIP { output: tuple val(meta), path("*.chip"), emit: chip - path "versions.yml" , emit: versions + tuple val("${task.process}"), val('CUSTOM_TABULARTOGSEACHIP'), eval("awk -Wversion | sed '1!d; s/.*Awk //; s/,.*//'"), emit: versions_custom_tabulartogseachip, topic: versions when: task.ext.when == null || task.ext.when @@ -36,10 +36,6 @@ process CUSTOM_TABULARTOGSEACHIP { tail -n +2 $tabular | awk -F'\\t' -v id=\$id_col -v symbol=\$symbol_col '{print \$id"\\t"\$symbol"\\tNA"}' >> \${outfile}.tmp mv \${outfile}.tmp \${outfile} - cat <<-END_VERSIONS > versions.yml - "${task.process}": - gawk: \$(echo \$(gawk --version 2>&1) | sed 's/^.*GNU Awk //; s/, .*\$//') - END_VERSIONS """ stub: @@ -48,9 +44,6 @@ process CUSTOM_TABULARTOGSEACHIP { outfile=${prefix}.chip touch \$outfile - cat <<-END_VERSIONS > versions.yml - "${task.process}": - gawk: \$(echo \$(gawk --version 2>&1) | sed 's/^.*GNU Awk //; s/, .*\$//') - END_VERSIONS + """ } From 222062334fb79ee344327e36c470ee3117b77e42 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Mon, 20 Apr 2026 15:22:44 +0000 Subject: [PATCH 11/29] add versions to zip --- modules/nf-core/zip/main.nf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/nf-core/zip/main.nf b/modules/nf-core/zip/main.nf index b830162623eb..b67327335408 100644 --- a/modules/nf-core/zip/main.nf +++ b/modules/nf-core/zip/main.nf @@ -12,7 +12,7 @@ process ZIP { output: tuple val(meta), path("${prefix}.zip"), emit: zipped_archive - path "versions.yml" , emit: versions + tuple val("${task.process}"), val('zip'), eval("7za --help | sed 's/.*p7zip Version //; s/(.*//'"), emit: versions_zip, topic: versions when: task.ext.when == null || task.ext.when From 920bfd2d35cac8f7f7e62d5985b92505220a3104 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Mon, 20 Apr 2026 15:28:15 +0000 Subject: [PATCH 12/29] update meta.yml zip --- modules/nf-core/zip/meta.yml | 35 +++++++++++++++++++++++++---------- 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/modules/nf-core/zip/meta.yml b/modules/nf-core/zip/meta.yml index 81624fc817e7..4e8710219944 100644 --- a/modules/nf-core/zip/meta.yml +++ b/modules/nf-core/zip/meta.yml @@ -7,12 +7,13 @@ keywords: - archiving tools: - unzip: - description: p7zip is a quick port of 7z.exe and 7za.exe (command line version - of 7zip, see www.7-zip.org) for Unix. + description: p7zip is a quick port of 7z.exe and 7za.exe (command line + version of 7zip, see www.7-zip.org) for Unix. homepage: https://sourceforge.net/projects/p7zip/ documentation: https://sourceforge.net/projects/p7zip/ tool_dev_url: https://sourceforge.net/projects/p7zip" - licence: ["LGPL-2.1-or-later"] + licence: + - "LGPL-2.1-or-later" identifier: "" input: - - meta: @@ -36,14 +37,28 @@ output: description: ZIP file pattern: "*.zip" ontologies: - - edam: http://edamontology.org/format_3987 # ZIP format + - edam: http://edamontology.org/format_3987 + versions_zip: + - - ${task.process}: + type: string + description: The name of the process + - zip: + type: string + description: The name of the tool + - 7za --help | sed 's/.*p7zip Version //; s/(.*//': + type: eval + description: The expression to obtain the version of the tool +topics: versions: - - versions.yml: - type: file - description: File containing software versions - pattern: "versions.yml" - ontologies: - - edam: http://edamontology.org/format_3750 # YAML + - - ${task.process}: + type: string + description: The name of the process + - zip: + type: string + description: The name of the tool + - 7za --help | sed 's/.*p7zip Version //; s/(.*//': + type: eval + description: The expression to obtain the version of the tool authors: - "@jfy133" - "@pinin4fjords" From 7a3c996bcfa73179ffd02a1c2781fde5d39906c4 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Mon, 20 Apr 2026 15:43:53 +0000 Subject: [PATCH 13/29] update meta.yml --- .../custom/filterdifferentialtable/meta.yml | 25 +++++++++-------- .../nf-core/custom/tabulartogseachip/meta.yml | 28 ++++++++++++++----- modules/nf-core/geoquery/getgeo/meta.yml | 14 +++++++--- .../proteus/readproteingroups/meta.yml | 10 +++++-- 4 files changed, 53 insertions(+), 24 deletions(-) diff --git a/modules/nf-core/custom/filterdifferentialtable/meta.yml b/modules/nf-core/custom/filterdifferentialtable/meta.yml index 9ee9c6b393f0..b87159857f69 100644 --- a/modules/nf-core/custom/filterdifferentialtable/meta.yml +++ b/modules/nf-core/custom/filterdifferentialtable/meta.yml @@ -1,6 +1,6 @@ name: "custom_filterdifferentialtable" -description: Filters a differential expression table based on logFC and adjusted p-value - thresholds +description: Filters a differential expression table based on logFC and adjusted + p-value thresholds keywords: - filter - differential expression @@ -14,7 +14,8 @@ tools: documentation: "https://pandas.pydata.org/docs/" tool_dev_url: "https://github.com/pandas-dev/pandas" doi: "10.5281/zenodo.3509134" - licence: ["BSD-3-Clause"] + licence: + - "BSD-3-Clause" identifiers: - "biotools:pandas" - "conda:pandas" @@ -30,8 +31,8 @@ input: description: Input differential expression table (CSV, TSV, or TXT format) pattern: "*.{csv,tsv,txt}" ontologies: - - edam: http://edamontology.org/format_3752 # CSV - - edam: http://edamontology.org/format_3475 # TSV + - edam: http://edamontology.org/format_3752 + - edam: http://edamontology.org/format_3475 - - logfc_column: type: string description: Name of the column containing log fold change values @@ -68,7 +69,7 @@ output: description: Filtered differential expression table pattern: "*_filtered.tsv" ontologies: - - edam: http://edamontology.org/format_3475 # TSV + - edam: http://edamontology.org/format_3475 filtered_up: - - meta: type: map @@ -77,10 +78,11 @@ output: e.g. [ id:'test', single_end:false ] - "*_filtered_up.tsv": type: file - description: Filtered differential expression table for overexpressed genes + description: Filtered differential expression table for overexpressed + genes pattern: "*_filtered_up.tsv" ontologies: - - edam: http://edamontology.org/format_3475 # TSV + - edam: http://edamontology.org/format_3475 filtered_down: - - meta: type: map @@ -89,17 +91,18 @@ output: e.g. [ id:'test', single_end:false ] - "*_filtered_down.tsv": type: file - description: Filtered differential expression table for underexpressed genes + description: Filtered differential expression table for underexpressed + genes pattern: "*_filtered_down.tsv" ontologies: - - edam: http://edamontology.org/format_3475 # TSV + - edam: http://edamontology.org/format_3475 versions: - versions.yml: type: file description: File containing software versions pattern: "versions.yml" ontologies: - - edam: http://edamontology.org/format_3750 # YAML + - edam: http://edamontology.org/format_3750 authors: - "@pinin4fjords" - "@WackerO" diff --git a/modules/nf-core/custom/tabulartogseachip/meta.yml b/modules/nf-core/custom/tabulartogseachip/meta.yml index 7dddadc3612d..8fe550555272 100644 --- a/modules/nf-core/custom/tabulartogseachip/meta.yml +++ b/modules/nf-core/custom/tabulartogseachip/meta.yml @@ -24,7 +24,7 @@ input: features ids, and another column with the features symbols. pattern: "*.{tsv}" ontologies: - - edam: http://edamontology.org/format_3475 # TSV + - edam: http://edamontology.org/format_3475 - - id: type: string description: The name of the column containing feature ids @@ -44,13 +44,27 @@ output: https://software.broadinstitute.org/cancer/software/gsea/wiki/index.php/Data_formats pattern: "*.chip" ontologies: [] + versions_custom_tabulartogseachip: + - - ${task.process}: + type: string + description: The name of the process + - CUSTOM_TABULARTOGSEACHIP: + type: string + description: The name of the tool + - awk -Wversion | sed '1!d; s/.*Awk //; s/,.*//': + type: eval + description: The expression to obtain the version of the tool +topics: versions: - - versions.yml: - type: file - description: File containing software versions - pattern: "versions.yml" - ontologies: - - edam: http://edamontology.org/format_3750 # YAML + - - ${task.process}: + type: string + description: The name of the process + - CUSTOM_TABULARTOGSEACHIP: + type: string + description: The name of the tool + - awk -Wversion | sed '1!d; s/.*Awk //; s/,.*//': + type: eval + description: The expression to obtain the version of the tool authors: - "@pinin4fjords" - "@suzannejin" diff --git a/modules/nf-core/geoquery/getgeo/meta.yml b/modules/nf-core/geoquery/getgeo/meta.yml index 04ca904f6cb8..7631c0887acf 100644 --- a/modules/nf-core/geoquery/getgeo/meta.yml +++ b/modules/nf-core/geoquery/getgeo/meta.yml @@ -11,7 +11,8 @@ tools: documentation: "https://bioconductor.org/packages/release/bioc/vignettes/GEOquery/inst/doc/GEOquery.html" tool_dev_url: "https://github.com/seandavi/GEOquery" doi: "10.1093/bioinformatics/btm254" - licence: ["MIT"] + licence: + - "MIT" identifier: biotools:geoquery input: - - meta: @@ -41,7 +42,7 @@ output: description: TSV-format expression matrix pattern: "*matrix.tsv" ontologies: - - edam: http://edamontology.org/format_3475 # TSV + - edam: http://edamontology.org/format_3475 annotation: - - meta: type: map @@ -51,14 +52,19 @@ output: description: TSV-format annotation file pattern: "*annotation.tsv" ontologies: - - edam: http://edamontology.org/format_3475 # TSV + - edam: http://edamontology.org/format_3475 versions: - versions.yml: type: file description: File containing software versions pattern: "versions.yml" ontologies: - - edam: http://edamontology.org/format_3750 # YAML + - edam: http://edamontology.org/format_3750 +topics: + versions: + - versions.yml: + type: string + description: The name of the process authors: - "@azedinez" - "@pinin4fjords" diff --git a/modules/nf-core/proteus/readproteingroups/meta.yml b/modules/nf-core/proteus/readproteingroups/meta.yml index 5f5e8f57faff..29f41882a2e5 100644 --- a/modules/nf-core/proteus/readproteingroups/meta.yml +++ b/modules/nf-core/proteus/readproteingroups/meta.yml @@ -11,7 +11,8 @@ tools: documentation: "https://rdrr.io/github/bartongroup/Proteus/" tool_dev_url: "https://github.com/bartongroup/Proteus" doi: "10.1101/416511" - licence: ["GPL v2"] + licence: + - "GPL v2" identifier: biotools:proteus-engineering input: - - meta: @@ -134,7 +135,12 @@ output: description: File containing software versions pattern: "versions.yml" ontologies: - - edam: http://edamontology.org/format_3750 # YAML + - edam: http://edamontology.org/format_3750 +topics: + versions: + - versions.yml: + type: string + description: The name of the process authors: - "@WackerO" maintainers: From e0f638cf313a7ead8056b27729826a86d96dd35d Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Mon, 20 Apr 2026 15:51:58 +0000 Subject: [PATCH 14/29] update meta.yml --- .../custom/filterdifferentialtable/main.nf | 7 +---- .../custom/filterdifferentialtable/meta.yml | 26 ++++++++++++++----- 2 files changed, 21 insertions(+), 12 deletions(-) diff --git a/modules/nf-core/custom/filterdifferentialtable/main.nf b/modules/nf-core/custom/filterdifferentialtable/main.nf index cad5d3839fda..12f5e936f0d7 100644 --- a/modules/nf-core/custom/filterdifferentialtable/main.nf +++ b/modules/nf-core/custom/filterdifferentialtable/main.nf @@ -16,7 +16,7 @@ process CUSTOM_FILTERDIFFERENTIALTABLE { tuple val(meta), path("*_filtered.tsv") , emit: filtered tuple val(meta), path("*_filtered_up.tsv") , emit: filtered_up tuple val(meta), path("*_filtered_down.tsv") , emit: filtered_down - path "versions.yml" , emit: versions + tuple val("${task.process}"), val('CUSTOM_FILTERDIFFERENTIALTABLE'), eval("python -c \"import pandas as pd; print(pd.__version__)\""), emit: versions_customfilterdifferentialtable, topic: versions when: task.ext.when == null || task.ext.when @@ -71,10 +71,6 @@ process CUSTOM_FILTERDIFFERENTIALTABLE { filtered_table_up.to_csv("${prefix}_filtered_up.tsv", sep='\t', index=False) filtered_table_down.to_csv("${prefix}_filtered_down.tsv", sep='\t', index=False) - # Write versions - with open('versions.yml', 'w') as version_file: - version_file.write('"${task.process}":\\n') - version_file.write(f" pandas: {pd.__version__}\\n") """ stub: @@ -83,6 +79,5 @@ process CUSTOM_FILTERDIFFERENTIALTABLE { touch ${prefix}_filtered.tsv touch ${prefix}_filtered_up.tsv touch ${prefix}_filtered_down.tsv - echo '"${task.process}":\\n pandas: 1.5.2' > versions.yml """ } diff --git a/modules/nf-core/custom/filterdifferentialtable/meta.yml b/modules/nf-core/custom/filterdifferentialtable/meta.yml index b87159857f69..4a7d37588969 100644 --- a/modules/nf-core/custom/filterdifferentialtable/meta.yml +++ b/modules/nf-core/custom/filterdifferentialtable/meta.yml @@ -96,13 +96,27 @@ output: pattern: "*_filtered_down.tsv" ontologies: - edam: http://edamontology.org/format_3475 + versions_customfilterdifferentialtable: + - - ${task.process}: + type: string + description: The name of the process + - CUSTOM_FILTERDIFFERENTIALTABLE: + type: string + description: The name of the tool + - python -c "import pandas as pd; print(pd.__version__)": + type: eval + description: The expression to obtain the version of the tool +topics: versions: - - versions.yml: - type: file - description: File containing software versions - pattern: "versions.yml" - ontologies: - - edam: http://edamontology.org/format_3750 + - - ${task.process}: + type: string + description: The name of the process + - CUSTOM_FILTERDIFFERENTIALTABLE: + type: string + description: The name of the tool + - python -c "import pandas as pd; print(pd.__version__)": + type: eval + description: The expression to obtain the version of the tool authors: - "@pinin4fjords" - "@WackerO" From 8604b70c64b9a69627934ff929e86d601134f0d1 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Tue, 21 Apr 2026 16:53:40 +0000 Subject: [PATCH 15/29] update zip snap --- modules/nf-core/zip/tests/main.nf.test.snap | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/modules/nf-core/zip/tests/main.nf.test.snap b/modules/nf-core/zip/tests/main.nf.test.snap index ee29e2813e74..ba8cb85ac1f6 100644 --- a/modules/nf-core/zip/tests/main.nf.test.snap +++ b/modules/nf-core/zip/tests/main.nf.test.snap @@ -1,10 +1,10 @@ { "versions": { - "content": [ - [ - "versions.yml:md5,721b9a1e22ba1d75fe6a30bb1684cf02" - ] - ], - "timestamp": "2023-11-28T18:31:32.386325319" + "content": null, + "timestamp": "2026-04-20T19:15:55.112565364", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } } } \ No newline at end of file From cd3a714a742bf2705e5113da0e41b918881c01e6 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Tue, 21 Apr 2026 16:56:27 +0000 Subject: [PATCH 16/29] remove version collection from CUSTOM_FILTERDIFFERENTIALTABLE --- subworkflows/nf-core/abundance_differential_filter/main.nf | 1 - 1 file changed, 1 deletion(-) diff --git a/subworkflows/nf-core/abundance_differential_filter/main.nf b/subworkflows/nf-core/abundance_differential_filter/main.nf index 81836f03b528..9a66992dc4f7 100644 --- a/subworkflows/nf-core/abundance_differential_filter/main.nf +++ b/subworkflows/nf-core/abundance_differential_filter/main.nf @@ -255,7 +255,6 @@ workflow ABUNDANCE_DIFFERENTIAL_FILTER { ch_diff_filter_params.fc_input, ch_diff_filter_params.stat_input ) - ch_versions = ch_versions.mix(CUSTOM_FILTERDIFFERENTIALTABLE.out.versions.first()) emit: From f2e38ad74d89d75a62e3add15751ae1aded758a2 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Tue, 21 Apr 2026 17:05:19 +0000 Subject: [PATCH 17/29] remove version collection from CUSTOM_TABULARTOGSEACHIP --- subworkflows/nf-core/differential_functional_enrichment/main.nf | 1 - 1 file changed, 1 deletion(-) diff --git a/subworkflows/nf-core/differential_functional_enrichment/main.nf b/subworkflows/nf-core/differential_functional_enrichment/main.nf index 2ae98aac8314..a7fdaeccbfd6 100644 --- a/subworkflows/nf-core/differential_functional_enrichment/main.nf +++ b/subworkflows/nf-core/differential_functional_enrichment/main.nf @@ -153,7 +153,6 @@ workflow DIFFERENTIAL_FUNCTIONAL_ENRICHMENT { .mix(GPROFILER2_GOST.out.versions) .mix(CUSTOM_TABULARTOGSEAGCT.out.versions) .mix(CUSTOM_TABULARTOGSEACLS.out.versions) - .mix(CUSTOM_TABULARTOGSEACHIP.out.versions) .mix(DECOUPLER_DECOUPLER.out.versions) .mix(PROPR_GREA.out.versions) From f5fcc3cb5e416d15bf2ce664967bf289a57c759d Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Tue, 21 Apr 2026 17:13:16 +0000 Subject: [PATCH 18/29] Process output of type 'eval' is only allowed with Bash process scripts --- modules/nf-core/custom/filterdifferentialtable/main.nf | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/nf-core/custom/filterdifferentialtable/main.nf b/modules/nf-core/custom/filterdifferentialtable/main.nf index 12f5e936f0d7..73dbbd219492 100644 --- a/modules/nf-core/custom/filterdifferentialtable/main.nf +++ b/modules/nf-core/custom/filterdifferentialtable/main.nf @@ -16,7 +16,7 @@ process CUSTOM_FILTERDIFFERENTIALTABLE { tuple val(meta), path("*_filtered.tsv") , emit: filtered tuple val(meta), path("*_filtered_up.tsv") , emit: filtered_up tuple val(meta), path("*_filtered_down.tsv") , emit: filtered_down - tuple val("${task.process}"), val('CUSTOM_FILTERDIFFERENTIALTABLE'), eval("python -c \"import pandas as pd; print(pd.__version__)\""), emit: versions_customfilterdifferentialtable, topic: versions + path "versions.yml", emit: versions_customfilterdifferentialtable, topic: versions when: task.ext.when == null || task.ext.when @@ -71,6 +71,11 @@ process CUSTOM_FILTERDIFFERENTIALTABLE { filtered_table_up.to_csv("${prefix}_filtered_up.tsv", sep='\t', index=False) filtered_table_down.to_csv("${prefix}_filtered_down.tsv", sep='\t', index=False) + # Write versions + with open('versions.yml', 'w') as version_file: + version_file.write('"${task.process}":\\n') + version_file.write(f" pandas: {pd.__version__}\\n") + """ stub: @@ -79,5 +84,6 @@ process CUSTOM_FILTERDIFFERENTIALTABLE { touch ${prefix}_filtered.tsv touch ${prefix}_filtered_up.tsv touch ${prefix}_filtered_down.tsv + echo '"${task.process}":\\n pandas: 1.5.2' > versions.yml """ } From b52972c3c3ce624d5f00d777afa7fecca9d202ab Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Tue, 21 Apr 2026 17:20:20 +0000 Subject: [PATCH 19/29] modify meta.yml --- .../custom/filterdifferentialtable/meta.yml | 27 +++++++------------ 1 file changed, 9 insertions(+), 18 deletions(-) diff --git a/modules/nf-core/custom/filterdifferentialtable/meta.yml b/modules/nf-core/custom/filterdifferentialtable/meta.yml index 4a7d37588969..e3f024548570 100644 --- a/modules/nf-core/custom/filterdifferentialtable/meta.yml +++ b/modules/nf-core/custom/filterdifferentialtable/meta.yml @@ -97,26 +97,17 @@ output: ontologies: - edam: http://edamontology.org/format_3475 versions_customfilterdifferentialtable: - - - ${task.process}: - type: string - description: The name of the process - - CUSTOM_FILTERDIFFERENTIALTABLE: - type: string - description: The name of the tool - - python -c "import pandas as pd; print(pd.__version__)": - type: eval - description: The expression to obtain the version of the tool + - versions.yml: + type: file + description: File containing software versions + pattern: "versions.yml" + ontologies: + - edam: http://edamontology.org/format_3750 topics: versions: - - - ${task.process}: - type: string - description: The name of the process - - CUSTOM_FILTERDIFFERENTIALTABLE: - type: string - description: The name of the tool - - python -c "import pandas as pd; print(pd.__version__)": - type: eval - description: The expression to obtain the version of the tool + - versions.yml: + type: string + description: The name of the process authors: - "@pinin4fjords" - "@WackerO" From 1d2d13d6692a6eda1b77173afd4fff0c6eeddae4 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Tue, 21 Apr 2026 17:34:29 +0000 Subject: [PATCH 20/29] update versions zip --- modules/nf-core/zip/main.nf | 7 +------ modules/nf-core/zip/tests/main.nf.test | 4 +++- modules/nf-core/zip/tests/main.nf.test.snap | 14 ++++++++++++-- 3 files changed, 16 insertions(+), 9 deletions(-) diff --git a/modules/nf-core/zip/main.nf b/modules/nf-core/zip/main.nf index b67327335408..2f15d6954f60 100644 --- a/modules/nf-core/zip/main.nf +++ b/modules/nf-core/zip/main.nf @@ -12,7 +12,7 @@ process ZIP { output: tuple val(meta), path("${prefix}.zip"), emit: zipped_archive - tuple val("${task.process}"), val('zip'), eval("7za --help | sed 's/.*p7zip Version //; s/(.*//'"), emit: versions_zip, topic: versions + tuple val("${task.process}"), val('zip'), eval("7za i 2>&1 | grep 'p7zip Version' | sed 's/.*p7zip Version //; s/(.*//'"), emit: versions_zip, topic: versions when: task.ext.when == null || task.ext.when @@ -27,10 +27,5 @@ process ZIP { -l \\ $args \\ "${prefix}.zip" ./inputs/* - - cat <<-END_VERSIONS > versions.yml - "${task.process}": - 7za: \$(echo \$(7za --help) | sed 's/.*p7zip Version //; s/(.*//') - END_VERSIONS """ } diff --git a/modules/nf-core/zip/tests/main.nf.test b/modules/nf-core/zip/tests/main.nf.test index 9652841d3601..2367a1284f31 100644 --- a/modules/nf-core/zip/tests/main.nf.test +++ b/modules/nf-core/zip/tests/main.nf.test @@ -24,7 +24,9 @@ nextflow_process { assertAll( { assert process.success }, { assert path(process.out.zipped_archive.get(0).get(1)).exists() }, - { assert snapshot(process.out.versions).match("versions") } + { assert snapshot( + process.out.findAll { key, val -> key.startsWith('versions') }, + ).match("versions") } ) } } diff --git a/modules/nf-core/zip/tests/main.nf.test.snap b/modules/nf-core/zip/tests/main.nf.test.snap index ba8cb85ac1f6..e02ab8a29f6b 100644 --- a/modules/nf-core/zip/tests/main.nf.test.snap +++ b/modules/nf-core/zip/tests/main.nf.test.snap @@ -1,7 +1,17 @@ { "versions": { - "content": null, - "timestamp": "2026-04-20T19:15:55.112565364", + "content": [ + { + "versions_zip": [ + [ + "ZIP", + "zip", + "16.02 " + ] + ] + } + ], + "timestamp": "2026-04-21T17:33:25.048503257", "meta": { "nf-test": "0.9.5", "nextflow": "25.10.4" From f95622997bfc729d88918280762ca812cbeea197 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Tue, 21 Apr 2026 18:03:37 +0000 Subject: [PATCH 21/29] remove publishDir --- modules/nf-core/limma/differential/tests/nextflow.config | 2 -- .../limma/differential/tests/nextflow.exclude_samples.config | 2 -- .../limma/differential/tests/nextflow.interaction.config | 2 -- .../limma/differential/tests/nextflow.subset_to_contrast.config | 2 -- modules/nf-core/limma/differential/tests/nextflow.voom.config | 2 -- .../limma/differential/tests/nextflow.voom_blocking.config | 2 -- .../nf-core/limma/differential/tests/nextflow.voom_mixed.config | 2 -- .../limma/differential/tests/nextflow.voom_mixed_seed.config | 2 -- 8 files changed, 16 deletions(-) diff --git a/modules/nf-core/limma/differential/tests/nextflow.config b/modules/nf-core/limma/differential/tests/nextflow.config index 98c5e882164e..2e799d2562b4 100644 --- a/modules/nf-core/limma/differential/tests/nextflow.config +++ b/modules/nf-core/limma/differential/tests/nextflow.config @@ -1,7 +1,5 @@ process { - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - withName: 'LIMMA_DIFFERENTIAL' { ext.args = { [ "--sample_id_col name", diff --git a/modules/nf-core/limma/differential/tests/nextflow.exclude_samples.config b/modules/nf-core/limma/differential/tests/nextflow.exclude_samples.config index 1f4c02141582..015556080742 100644 --- a/modules/nf-core/limma/differential/tests/nextflow.exclude_samples.config +++ b/modules/nf-core/limma/differential/tests/nextflow.exclude_samples.config @@ -1,7 +1,5 @@ process { - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - withName: 'LIMMA_DIFFERENTIAL' { ext.args = { [ "--sample_id_col name", diff --git a/modules/nf-core/limma/differential/tests/nextflow.interaction.config b/modules/nf-core/limma/differential/tests/nextflow.interaction.config index f73bf1d62f8a..aafda5f3fb16 100644 --- a/modules/nf-core/limma/differential/tests/nextflow.interaction.config +++ b/modules/nf-core/limma/differential/tests/nextflow.interaction.config @@ -1,7 +1,5 @@ process { - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - withName: 'LIMMA_DIFFERENTIAL' { ext.args = { [ "--sample_id_col sample", diff --git a/modules/nf-core/limma/differential/tests/nextflow.subset_to_contrast.config b/modules/nf-core/limma/differential/tests/nextflow.subset_to_contrast.config index 09d6776b203e..57aaf7e8338d 100644 --- a/modules/nf-core/limma/differential/tests/nextflow.subset_to_contrast.config +++ b/modules/nf-core/limma/differential/tests/nextflow.subset_to_contrast.config @@ -1,7 +1,5 @@ process { - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - withName: 'LIMMA_DIFFERENTIAL' { ext.args = { [ "--sample_id_col name", diff --git a/modules/nf-core/limma/differential/tests/nextflow.voom.config b/modules/nf-core/limma/differential/tests/nextflow.voom.config index a1e505570e13..defe285a5164 100644 --- a/modules/nf-core/limma/differential/tests/nextflow.voom.config +++ b/modules/nf-core/limma/differential/tests/nextflow.voom.config @@ -1,7 +1,5 @@ process { - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - withName: 'LIMMA_DIFFERENTIAL' { ext.args = { [ "--sample_id_col sample", diff --git a/modules/nf-core/limma/differential/tests/nextflow.voom_blocking.config b/modules/nf-core/limma/differential/tests/nextflow.voom_blocking.config index d4e24f8538fc..253970c71197 100644 --- a/modules/nf-core/limma/differential/tests/nextflow.voom_blocking.config +++ b/modules/nf-core/limma/differential/tests/nextflow.voom_blocking.config @@ -1,7 +1,5 @@ process { - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - withName: 'LIMMA_DIFFERENTIAL' { ext.args = { [ "--sample_id_col sample", diff --git a/modules/nf-core/limma/differential/tests/nextflow.voom_mixed.config b/modules/nf-core/limma/differential/tests/nextflow.voom_mixed.config index 0adc069884f8..0697731bcd99 100644 --- a/modules/nf-core/limma/differential/tests/nextflow.voom_mixed.config +++ b/modules/nf-core/limma/differential/tests/nextflow.voom_mixed.config @@ -1,7 +1,5 @@ process { - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - withName: 'LIMMA_DIFFERENTIAL' { ext.args = { [ "--sample_id_col sample", diff --git a/modules/nf-core/limma/differential/tests/nextflow.voom_mixed_seed.config b/modules/nf-core/limma/differential/tests/nextflow.voom_mixed_seed.config index 2c930adec5bd..b9f357cbf4ae 100644 --- a/modules/nf-core/limma/differential/tests/nextflow.voom_mixed_seed.config +++ b/modules/nf-core/limma/differential/tests/nextflow.voom_mixed_seed.config @@ -1,7 +1,5 @@ process { - publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" } - withName: 'LIMMA_DIFFERENTIAL' { ext.args = { [ "--sample_id_col sample", From 8a74021bda822b4b763e634970828feb93f5195e Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Tue, 21 Apr 2026 18:06:51 +0000 Subject: [PATCH 22/29] fix linting --- modules/nf-core/zip/meta.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/nf-core/zip/meta.yml b/modules/nf-core/zip/meta.yml index 4e8710219944..a0744bb0982a 100644 --- a/modules/nf-core/zip/meta.yml +++ b/modules/nf-core/zip/meta.yml @@ -45,7 +45,7 @@ output: - zip: type: string description: The name of the tool - - 7za --help | sed 's/.*p7zip Version //; s/(.*//': + - 7za i 2>&1 | grep 'p7zip Version' | sed 's/.*p7zip Version //; s/(.*//': type: eval description: The expression to obtain the version of the tool topics: @@ -56,7 +56,7 @@ topics: - zip: type: string description: The name of the tool - - 7za --help | sed 's/.*p7zip Version //; s/(.*//': + - 7za i 2>&1 | grep 'p7zip Version' | sed 's/.*p7zip Version //; s/(.*//': type: eval description: The expression to obtain the version of the tool authors: From ea900b5622e883d947b7053e2097799540780e80 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Tue, 21 Apr 2026 18:48:39 +0000 Subject: [PATCH 23/29] fix input tuple does not match tuple declaration in process --- modules/nf-core/limma/differential/tests/main.nf.test | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/modules/nf-core/limma/differential/tests/main.nf.test b/modules/nf-core/limma/differential/tests/main.nf.test index c99914c849de..003c48e2b0da 100644 --- a/modules/nf-core/limma/differential/tests/main.nf.test +++ b/modules/nf-core/limma/differential/tests/main.nf.test @@ -301,7 +301,7 @@ nextflow_process { process { """ input[0] = Channel.of(['id': 'test', 'variable': 'treatment', 'reference': 'hND6', 'target': 'mCherry']) - .map{tuple(it, it.variable, it.reference, it.target)} + .map{tuple(it, it.variable, it.reference, it.target, it.formula, it.comparison)} input[1] = Channel.of([[id:'test'], 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)]) @@ -330,7 +330,7 @@ nextflow_process { process { """ input[0] = Channel.of(['id': 'test', 'variable': 'treatment', 'reference': 'hND6', 'target': 'mCherry']) - .map{tuple(it, it.variable, it.reference, it.target)} + .map{tuple(it, it.variable, it.reference, it.target, it.formula, it.comparison)} input[1] = Channel.of([[id:'test'], 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)]) @@ -359,7 +359,7 @@ nextflow_process { process { """ input[0] = Channel.of(['id': 'test', 'variable': 'treatment', 'reference': 'hND6', 'target': 'mCherry']) - .map{tuple(it, it.variable, it.reference, it.target)} + .map{tuple(it, it.variable, it.reference, it.target, it.formula, it.comparison)} input[1] = Channel.of([[id:'test'], 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)]) @@ -388,7 +388,7 @@ nextflow_process { process { """ input[0] = Channel.of(['id': 'test', 'variable': 'treatment', 'reference': 'hND6', 'target': 'mCherry']) - .map{tuple(it, it.variable, it.reference, it.target)} + .map{tuple(it, it.variable, it.reference, it.target, it.formula, it.comparison)} input[1] = Channel.of([[id:'test'], 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)]) @@ -412,7 +412,7 @@ nextflow_process { when { process { """ input[0] = Channel.of(['id': 'test', 'variable': 'treatment', 'reference': 'hND6', 'target': 'mCherry']) - .map{tuple(it, it.variable, it.reference, it.target)} + .map{tuple(it, it.variable, it.reference, it.target, it.formula, it.comparison)} input[1] = Channel.of([[id:'test'], 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)]) From fdac3fc5758e2c7d135a2db4ac80e40ddf69a6dc Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Wed, 22 Apr 2026 16:27:52 +0000 Subject: [PATCH 24/29] update snapshot filterdifferentialtable --- .../filterdifferentialtable/tests/main.nf.test.snap | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/modules/nf-core/custom/filterdifferentialtable/tests/main.nf.test.snap b/modules/nf-core/custom/filterdifferentialtable/tests/main.nf.test.snap index 581f235679a3..566284db4074 100644 --- a/modules/nf-core/custom/filterdifferentialtable/tests/main.nf.test.snap +++ b/modules/nf-core/custom/filterdifferentialtable/tests/main.nf.test.snap @@ -27,17 +27,17 @@ ] ], "versions": [ - "versions.yml:md5,cb198b2ec6562ff113a18db461fabccb" + "versions.yml:md5,c0d19fbbdd52d186345dd716bb94bd10" ] }, { "CUSTOM_FILTERDIFFERENTIALTABLE": { "pandas": "1.5.2", - "python": "3.11.0" + "python": "3.11.15" } } ], - "timestamp": "2026-04-21T16:55:50.246656199", + "timestamp": "2026-04-22T16:25:27.044800112", "meta": { "nf-test": "0.9.5", "nextflow": "25.10.4" @@ -71,17 +71,17 @@ ] ], "versions": [ - "versions.yml:md5,cb198b2ec6562ff113a18db461fabccb" + "versions.yml:md5,c0d19fbbdd52d186345dd716bb94bd10" ] }, { "CUSTOM_FILTERDIFFERENTIALTABLE": { "pandas": "1.5.2", - "python": "3.11.0" + "python": "3.11.15" } } ], - "timestamp": "2026-04-21T16:55:39.761118313", + "timestamp": "2026-04-22T16:25:17.054820398", "meta": { "nf-test": "0.9.5", "nextflow": "25.10.4" From b3935a85598ba305fe92e2500020914a4028aebd Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Wed, 22 Apr 2026 16:32:20 +0000 Subject: [PATCH 25/29] fix linting --- .../nf-core/custom/filterdifferentialtable/meta.yml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/modules/nf-core/custom/filterdifferentialtable/meta.yml b/modules/nf-core/custom/filterdifferentialtable/meta.yml index 0d2a4411706a..d21016be6dda 100644 --- a/modules/nf-core/custom/filterdifferentialtable/meta.yml +++ b/modules/nf-core/custom/filterdifferentialtable/meta.yml @@ -102,7 +102,14 @@ output: description: File containing software versions pattern: "versions.yml" ontologies: - - edam: http://edamontology.org/format_3750 # YAML + - edam: http://edamontology.org/format_3750 + versions: + - versions.yml: + type: file + description: File containing software versions + pattern: "versions.yml" + ontologies: + - edam: http://edamontology.org/format_3750 topics: versions: - versions.yml: @@ -110,7 +117,7 @@ topics: description: File containing software versions pattern: "versions.yml" ontologies: - - edam: http://edamontology.org/format_3750 # YAML + - edam: http://edamontology.org/format_3750 authors: - "@pinin4fjords" - "@WackerO" From 3fdaaa71fdce4801178712804242b170f92d943e Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Wed, 22 Apr 2026 16:49:32 +0000 Subject: [PATCH 26/29] update environment and docker container --- .../nf-core/custom/filterdifferentialtable/environment.yml | 2 +- modules/nf-core/custom/filterdifferentialtable/main.nf | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/nf-core/custom/filterdifferentialtable/environment.yml b/modules/nf-core/custom/filterdifferentialtable/environment.yml index cb2f96fa0797..1b23a14ce6d5 100644 --- a/modules/nf-core/custom/filterdifferentialtable/environment.yml +++ b/modules/nf-core/custom/filterdifferentialtable/environment.yml @@ -5,4 +5,4 @@ channels: - bioconda dependencies: - conda-forge::pandas=1.5.2 - - conda-forge::python=3.11.0 + - conda-forge::python=3.11.15 diff --git a/modules/nf-core/custom/filterdifferentialtable/main.nf b/modules/nf-core/custom/filterdifferentialtable/main.nf index 3689da57f399..36f70c4bd218 100644 --- a/modules/nf-core/custom/filterdifferentialtable/main.nf +++ b/modules/nf-core/custom/filterdifferentialtable/main.nf @@ -4,8 +4,8 @@ process CUSTOM_FILTERDIFFERENTIALTABLE { 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/4d/4d7a62daafff045d7ea7739aac6e24d495ab94512525d73bcd865f5cf27cfe0f/data' : - 'community.wave.seqera.io/library/pandas:1.5.2--8aad09419bb2ac73' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/b0/b06950ac325030db5976f3d9c536e358eb686503af35c7e6222f86d016b3466f/data' : + 'community.wave.seqera.io/library/pandas_python:67bda66f0cb8a241' }" input: tuple val(meta), path(input_file) From bfcc2af4eb4aa85daac5b80df3d43b98e31e88a5 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Wed, 22 Apr 2026 16:52:41 +0000 Subject: [PATCH 27/29] update snapshot --- modules/nf-core/limma/differential/tests/main.nf.test | 2 +- .../nf-core/limma/differential/tests/main.nf.test.snap | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/modules/nf-core/limma/differential/tests/main.nf.test b/modules/nf-core/limma/differential/tests/main.nf.test index 003c48e2b0da..02b235145252 100644 --- a/modules/nf-core/limma/differential/tests/main.nf.test +++ b/modules/nf-core/limma/differential/tests/main.nf.test @@ -313,7 +313,7 @@ nextflow_process { assertAll( { assert process.success }, { assert snapshot(process.out.model, process.out.versions).match() }, - { assert path(process.out.results[0][1]).getText().contains("ENSMUSG00000023978\t-4.89014922224241") }, + { assert path(process.out.results[0][1]).getText().contains("ENSMUSG00000023978\t-4.89014922224") }, { assert path(process.out.results[0][1]).getText().contains("ENSMUSG00000059991\t0.77922") }, { assert path(process.out.normalised_counts[0][1]).getText().contains("ENSMUSG00000023978\t6.11247620232167") }, { assert path(process.out.normalised_counts[0][1]).getText().contains("ENSMUSG00000059991\t4.52751370160052") } diff --git a/modules/nf-core/limma/differential/tests/main.nf.test.snap b/modules/nf-core/limma/differential/tests/main.nf.test.snap index 75e1c364d086..9c3909b9cffd 100644 --- a/modules/nf-core/limma/differential/tests/main.nf.test.snap +++ b/modules/nf-core/limma/differential/tests/main.nf.test.snap @@ -31,17 +31,17 @@ "reference": "hND6", "target": "mCherry" }, - "test.limma.model.txt:md5,3b96713b4e3f027b0347859f02a9038d" + "test.limma.model.txt:md5,cb9d919594a83c8d15e3693bd599a0bb" ] ], [ "versions.yml:md5,88a6e42d753077edab8daf829cd4d943" ] ], - "timestamp": "2024-10-31T12:35:52.20676", + "timestamp": "2026-04-22T16:52:14.678632369", "meta": { - "nf-test": "0.9.1", - "nextflow": "24.04.4" + "nf-test": "0.9.5", + "nextflow": "25.10.4" } }, "test_limma_differential - voom": { From 77d3dcdb9735f0ada44e3f5437a47d4731bc860e Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Wed, 22 Apr 2026 17:13:14 +0000 Subject: [PATCH 28/29] fix linting --- modules/nf-core/custom/filterdifferentialtable/meta.yml | 7 ------- modules/nf-core/limma/differential/main.nf | 2 +- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/modules/nf-core/custom/filterdifferentialtable/meta.yml b/modules/nf-core/custom/filterdifferentialtable/meta.yml index d21016be6dda..50394aeb3be4 100644 --- a/modules/nf-core/custom/filterdifferentialtable/meta.yml +++ b/modules/nf-core/custom/filterdifferentialtable/meta.yml @@ -96,13 +96,6 @@ output: pattern: "*_filtered_down.tsv" ontologies: - edam: http://edamontology.org/format_3475 - versions_customfilterdifferentialtable: - - versions.yml: - type: file - description: File containing software versions - pattern: "versions.yml" - ontologies: - - edam: http://edamontology.org/format_3750 versions: - versions.yml: type: file diff --git a/modules/nf-core/limma/differential/main.nf b/modules/nf-core/limma/differential/main.nf index 0d40e8654c2e..0fa81751a966 100644 --- a/modules/nf-core/limma/differential/main.nf +++ b/modules/nf-core/limma/differential/main.nf @@ -18,7 +18,7 @@ process LIMMA_DIFFERENTIAL { tuple val(meta), path("*.limma.model.txt") , emit: model tuple val(meta), path("*.R_sessionInfo.log") , emit: session_info tuple val(meta), path("*.normalised_counts.tsv") , emit: normalised_counts, optional: true - path "versions.yml" , emit: versions + path "versions.yml" , emit: versions, topic: versions when: task.ext.when == null || task.ext.when From 93485ab3c786582c75b9618dc3d340a238506d73 Mon Sep 17 00:00:00 2001 From: Anabella Trigila <18577080+atrigila@users.noreply.github.com> Date: Wed, 22 Apr 2026 17:16:06 +0000 Subject: [PATCH 29/29] fix litngin --- modules/nf-core/limma/differential/meta.yml | 32 ++++++++++++--------- 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/modules/nf-core/limma/differential/meta.yml b/modules/nf-core/limma/differential/meta.yml index 175f555262a4..20a85736d7af 100644 --- a/modules/nf-core/limma/differential/meta.yml +++ b/modules/nf-core/limma/differential/meta.yml @@ -12,7 +12,8 @@ tools: documentation: "https://bioconductor.org/packages/release/bioc/vignettes/limma/inst/doc/usersguide.pdf" tool_dev_url: https://github.com/cran/limma"" doi: "10.18129/B9.bioc.limma" - licence: ["LGPL >=3"] + licence: + - "LGPL >=3" identifier: biotools:limma input: - - meta: @@ -39,12 +40,12 @@ input: should be used to derive the target samples - formula: type: string - description: (Optional, requires comparison if used) R formula string used for - modeling, e.g. '~ treatment'. + description: (Optional, requires comparison if used) R formula string used + for modeling, e.g. '~ treatment'. - comparison: type: string - description: (Optional, mandatory if formula is used) Literal string passed - to `limma::makeContrasts`, e.g. 'treatmentmCherry'. + description: (Optional, mandatory if formula is used) Literal string + passed to `limma::makeContrasts`, e.g. 'treatmentmCherry'. - - meta2: type: map description: | @@ -71,11 +72,11 @@ output: '--blocking_variable $meta.blocking'. - "*.limma.results.tsv": type: file - description: TSV-format table of differential expression information as output - by Limma + description: TSV-format table of differential expression information as + output by Limma pattern: "*.limma.results.tsv" ontologies: - - edam: http://edamontology.org/format_3475 # TSV + - edam: http://edamontology.org/format_3475 md_plot: - - meta: type: map @@ -115,7 +116,7 @@ output: description: TXT-format limma model pattern: "*.limma.model.tsv" ontologies: - - edam: http://edamontology.org/format_3475 # TSV + - edam: http://edamontology.org/format_3475 session_info: - - meta: type: map @@ -139,18 +140,23 @@ output: '--blocking_variable $meta.blocking'. - "*.normalised_counts.tsv": type: file - description: normalised TSV format expression matrix with probes by row and - samples by column + description: normalised TSV format expression matrix with probes by row + and samples by column pattern: "*.normalised_counts.tsv" ontologies: - - edam: http://edamontology.org/format_3475 # TSV + - edam: http://edamontology.org/format_3475 versions: - versions.yml: type: file description: File containing software versions pattern: "versions.yml" ontologies: - - edam: http://edamontology.org/format_3750 # YAML + - edam: http://edamontology.org/format_3750 +topics: + versions: + - versions.yml: + type: string + description: The name of the process authors: - "@pinin4fjords" maintainers: