From c2e5eb3439c95502119781923ac54be55d923a53 Mon Sep 17 00:00:00 2001 From: Marcel Ribeiro-Dantas Date: Sun, 16 Aug 2026 14:52:07 -0300 Subject: [PATCH 1/4] Migrate scanpy/hashsolo to topics --- modules/nf-core/scanpy/hashsolo/main.nf | 2 +- modules/nf-core/scanpy/hashsolo/meta.yml | 9 +- .../scanpy/hashsolo/tests/main.nf.test | 21 +- .../scanpy/hashsolo/tests/main.nf.test.snap | 498 ++---------------- 4 files changed, 45 insertions(+), 485 deletions(-) diff --git a/modules/nf-core/scanpy/hashsolo/main.nf b/modules/nf-core/scanpy/hashsolo/main.nf index cf7d915b7aa4..3cb34277e3bf 100644 --- a/modules/nf-core/scanpy/hashsolo/main.nf +++ b/modules/nf-core/scanpy/hashsolo/main.nf @@ -14,7 +14,7 @@ process SCANPY_HASHSOLO { tuple val(meta), path("*_assignment_hashsolo.csv"), emit: assignment tuple val(meta), path("*_hashsolo.h5ad") , emit: h5ad tuple val(meta), path("*_params_hashsolo.csv") , emit: params - 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/scanpy/hashsolo/meta.yml b/modules/nf-core/scanpy/hashsolo/meta.yml index d94d66610fae..112a6b0e4ab1 100644 --- a/modules/nf-core/scanpy/hashsolo/meta.yml +++ b/modules/nf-core/scanpy/hashsolo/meta.yml @@ -1,4 +1,3 @@ -# yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/meta-schema.json name: "SCANPY_HASHSOLO" description: Probabilistic demultiplexing of cell hashing data keywords: @@ -83,6 +82,14 @@ output: pattern: "versions.yml" ontologies: - edam: http://edamontology.org/format_3750 # YAML +topics: + versions: + - versions.yml: + type: file + description: File containing software versions + pattern: "versions.yml" + ontologies: + - edam: http://edamontology.org/format_3750 # YAML authors: - "@seohyonkim" - "@LuisHeinzlmeier" diff --git a/modules/nf-core/scanpy/hashsolo/tests/main.nf.test b/modules/nf-core/scanpy/hashsolo/tests/main.nf.test index a3a558e2b99b..6c82270d12ce 100644 --- a/modules/nf-core/scanpy/hashsolo/tests/main.nf.test +++ b/modules/nf-core/scanpy/hashsolo/tests/main.nf.test @@ -50,7 +50,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(process.out).match() } + { assert snapshot(sanitizeOutput(process.out)).match() } ) } } @@ -93,7 +93,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(process.out).match() } + { assert snapshot(sanitizeOutput(process.out)).match() } ) } } @@ -129,7 +129,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(process.out).match() } + { assert snapshot(sanitizeOutput(process.out)).match() } ) } } @@ -158,10 +158,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot( - process.out, - process.out.versions.collect { path(it).yaml } - ).match() } + { assert snapshot(sanitizeOutput(process.out)).match() } ) } @@ -196,10 +193,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot( - process.out, - process.out.versions.collect { path(it).yaml } - ).match() } + { assert snapshot(sanitizeOutput(process.out)).match() } ) } @@ -224,10 +218,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot( - process.out, - process.out.versions.collect { path(it).yaml } - ).match() } + { assert snapshot(sanitizeOutput(process.out)).match() } ) } diff --git a/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap b/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap index 2351088f5b9a..18aae005bc96 100644 --- a/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap +++ b/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap @@ -2,39 +2,12 @@ "hto_data_10x": { "content": [ { - "0": [ - [ - { - "id": "test" - }, - "test_assignment_hashsolo.csv:md5,a970a5192150b1832a3efea197c882cd" - ] - ], - "1": [ - [ - { - "id": "test" - }, - "test_hashsolo.h5ad:md5,3e9f7ed941ab5d1b59f51f1b1fb7e528" - ] - ], - "2": [ - [ - { - "id": "test" - }, - "test_params_hashsolo.csv:md5,17ed9d21353013b8547ac829874ff514" - ] - ], - "3": [ - "versions.yml:md5,f6178c11c8b15300ccafa689830c64e3" - ], "assignment": [ [ { "id": "test" }, - "test_assignment_hashsolo.csv:md5,a970a5192150b1832a3efea197c882cd" + "test_assignment_hashsolo.csv:md5,cdb1dd697d77d51bc69608b7014364e8" ] ], "h5ad": [ @@ -42,7 +15,7 @@ { "id": "test" }, - "test_hashsolo.h5ad:md5,3e9f7ed941ab5d1b59f51f1b1fb7e528" + "test_hashsolo.h5ad:md5,6982eabceeebc74bd74252033bbd139d" ] ], "params": [ @@ -58,42 +31,15 @@ ] } ], + "timestamp": "2026-08-16T13:48:49.223322", "meta": { - "nf-test": "0.9.2", - "nextflow": "25.04.6" - }, - "timestamp": "2025-08-11T06:12:34.257211014" + "nf-test": "0.9.5", + "nextflow": "26.04.0" + } }, "hto_data_10x - stub": { "content": [ { - "0": [ - [ - { - "id": "test" - }, - "test_assignment_hashsolo.csv:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "1": [ - [ - { - "id": "test" - }, - "test_hashsolo.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "2": [ - [ - { - "id": "test" - }, - "test_params_hashsolo.csv:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "3": [ - "versions.yml:md5,8fd954f7fb047e8ad17ff5710299ddf2" - ], "assignment": [ [ { @@ -123,42 +69,15 @@ ] } ], + "timestamp": "2026-08-16T13:49:05.899747", "meta": { - "nf-test": "0.9.2", - "nextflow": "25.04.6" - }, - "timestamp": "2025-08-11T06:12:55.413127431" + "nf-test": "0.9.5", + "nextflow": "26.04.0" + } }, "hto_data_h5ad (generated, no real data)": { "content": [ { - "0": [ - [ - { - "id": "test" - }, - "test_assignment_hashsolo.csv:md5,e6ffa5719d0dc3d2236ced778327b50c" - ] - ], - "1": [ - [ - { - "id": "test" - }, - "test_hashsolo.h5ad:md5,df3a1793ebfd8843bbc7371b2c8b6ffe" - ] - ], - "2": [ - [ - { - "id": "test" - }, - "test_params_hashsolo.csv:md5,7054d81f10cb650a72f9dea5bb23f44b" - ] - ], - "3": [ - "versions.yml:md5,f6178c11c8b15300ccafa689830c64e3" - ], "assignment": [ [ { @@ -186,95 +105,17 @@ "versions": [ "versions.yml:md5,f6178c11c8b15300ccafa689830c64e3" ] - }, - [ - { - "SCANPY_HASHSOLO": { - "matplotlib": "3.10.5", - "pandas": "2.3.1", - "python": "3.12.11", - "scanpy": "1.11.2" - } - } - ] - ], - "meta": { - "nf-test": "0.9.2", - "nextflow": "25.04.6" - }, - "timestamp": "2025-08-11T06:13:04.472233033" - }, - "generated h5ad": { - "content": [ - { - "0": [ - [ - { - "id": "test" - }, - "test_hashsolo.h5ad:md5,e1f129270b67e8575dd060d44e1c0c4b" - ] - ], - "1": [ - "versions.yml:md5,d4b55c68ad8effa4580cf202d802b007" - ], - "h5ad": [ - [ - { - "id": "test" - }, - "test_hashsolo.h5ad:md5,e1f129270b67e8575dd060d44e1c0c4b" - ] - ], - "versions": [ - "versions.yml:md5,d4b55c68ad8effa4580cf202d802b007" - ] - }, - [ - { - "SCANPY_HASHSOLO": { - "python": "3.12.11", - "scanpy": "1.11.2" - } - } - ] + } ], + "timestamp": "2026-08-16T13:49:12.234179", "meta": { - "nf-test": "0.9.2", - "nextflow": "25.04.3" - }, - "timestamp": "2025-07-02T10:01:12.076734105" + "nf-test": "0.9.5", + "nextflow": "26.04.0" + } }, "hto_data_h5ad (generated, no real data) - ext.args": { "content": [ { - "0": [ - [ - { - "id": "test" - }, - "test_assignment_hashsolo.csv:md5,8cdd1b5a8c910c2842518cb3caac541d" - ] - ], - "1": [ - [ - { - "id": "test" - }, - "test_hashsolo.h5ad:md5,6a2d2b734d32c9b368361795deb7306d" - ] - ], - "2": [ - [ - { - "id": "test" - }, - "test_params_hashsolo.csv:md5,c9e859256e6d28dc03049496b7eee509" - ] - ], - "3": [ - "versions.yml:md5,f6178c11c8b15300ccafa689830c64e3" - ], "assignment": [ [ { @@ -302,218 +143,17 @@ "versions": [ "versions.yml:md5,f6178c11c8b15300ccafa689830c64e3" ] - }, - [ - { - "SCANPY_HASHSOLO": { - "matplotlib": "3.10.5", - "pandas": "2.3.1", - "python": "3.12.11", - "scanpy": "1.11.2" - } - } - ] - ], - "meta": { - "nf-test": "0.9.2", - "nextflow": "25.04.6" - }, - "timestamp": "2025-08-11T06:13:12.760175521" - }, - "hto_matrix": { - "content": [ - { - "0": [ - [ - { - "id": "test" - }, - [ - "test_hashsolo.csv:md5,3e7d7ceeb97d93830556311daff388cd", - "test_params_hashsolo.csv:md5,c474067bceee23596942159ed2287f41" - ] - ] - ], - "1": [ - - ], - "2": [ - [ - { - "id": "test" - }, - "test_hashsolo.h5ad:md5,043358088cc7f369ebf7ac005cca23fe" - ] - ], - "3": [ - [ - { - "id": "test" - }, - "test_params_hashsolo.csv:md5,c474067bceee23596942159ed2287f41" - ] - ], - "4": [ - "versions.yml:md5,f6178c11c8b15300ccafa689830c64e3" - ], - "assignment": [ - [ - { - "id": "test" - }, - [ - "test_hashsolo.csv:md5,3e7d7ceeb97d93830556311daff388cd", - "test_params_hashsolo.csv:md5,c474067bceee23596942159ed2287f41" - ] - ] - ], - "h5ad": [ - [ - { - "id": "test" - }, - "test_hashsolo.h5ad:md5,043358088cc7f369ebf7ac005cca23fe" - ] - ], - "params": [ - [ - { - "id": "test" - }, - "test_params_hashsolo.csv:md5,c474067bceee23596942159ed2287f41" - ] - ], - "plot": [ - - ], - "versions": [ - "versions.yml:md5,f6178c11c8b15300ccafa689830c64e3" - ] } ], + "timestamp": "2026-08-16T13:49:18.473761", "meta": { - "nf-test": "0.9.2", - "nextflow": "25.04.3" - }, - "timestamp": "2025-08-08T21:32:31.163776" - }, - "hto_matrix - stub": { - "content": [ - { - "0": [ - [ - [ - - ], - [ - "[]_hashsolo.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "[]_params_hashsolo.csv:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ] - ], - "1": [ - [ - [ - - ], - "[]_hashsolo.jpg:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "2": [ - [ - [ - - ], - "[]_hashsolo.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "3": [ - [ - [ - - ], - "[]_params_hashsolo.csv:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "4": [ - "versions.yml:md5,8fd954f7fb047e8ad17ff5710299ddf2" - ], - "assignment": [ - [ - [ - - ], - [ - "[]_hashsolo.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "[]_params_hashsolo.csv:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ] - ], - "h5ad": [ - [ - [ - - ], - "[]_hashsolo.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "params": [ - [ - [ - - ], - "[]_params_hashsolo.csv:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "plot": [ - [ - [ - - ], - "[]_hashsolo.jpg:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "versions": [ - "versions.yml:md5,8fd954f7fb047e8ad17ff5710299ddf2" - ] - } - ], - "meta": { - "nf-test": "0.9.2", - "nextflow": "25.04.3" - }, - "timestamp": "2025-08-07T19:14:54.511322" + "nf-test": "0.9.5", + "nextflow": "26.04.0" + } }, "hto_data_h5ad (generated, no real data) - stub": { "content": [ { - "0": [ - [ - { - "id": "test" - }, - "test_assignment_hashsolo.csv:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "1": [ - [ - { - "id": "test" - }, - "test_hashsolo.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "2": [ - [ - { - "id": "test" - }, - "test_params_hashsolo.csv:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "3": [ - "versions.yml:md5,8fd954f7fb047e8ad17ff5710299ddf2" - ], "assignment": [ [ { @@ -541,101 +181,23 @@ "versions": [ "versions.yml:md5,8fd954f7fb047e8ad17ff5710299ddf2" ] - }, - [ - { - "SCANPY_HASHSOLO": { - "python": "3.12.11", - "scanpy": "1.11.2", - "matplotlib": "3.10.5", - "pandas": "2.3.1" - } - } - ] - ], - "meta": { - "nf-test": "0.9.2", - "nextflow": "25.04.6" - }, - "timestamp": "2025-08-11T06:13:22.084772685" - }, - "generated h5ad - stub": { - "content": [ - { - "0": [ - [ - { - "id": "test" - }, - "test_hashsolo.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "1": [ - "versions.yml:md5,21a56a941355317a8e1ca02d207f64a8" - ], - "h5ad": [ - [ - { - "id": "test" - }, - "test_hashsolo.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "versions": [ - "versions.yml:md5,21a56a941355317a8e1ca02d207f64a8" - ] - }, - [ - { - "SCANPY_HASHSOLO": { - "python": "3.12.11", - "scanpy": "1.11.2" - } - } - ] + } ], + "timestamp": "2026-08-16T13:49:25.887815", "meta": { - "nf-test": "0.9.2", - "nextflow": "25.04.3" - }, - "timestamp": "2025-07-02T10:01:21.413803466" + "nf-test": "0.9.5", + "nextflow": "26.04.0" + } }, "hto_data_10x - ext.args": { "content": [ { - "0": [ - [ - { - "id": "test" - }, - "test_assignment_hashsolo.csv:md5,dabd4b9a92e90c0030d86110fce3be40" - ] - ], - "1": [ - [ - { - "id": "test" - }, - "test_hashsolo.h5ad:md5,2625d58a4d9f0e24c8bf4066f06c3e70" - ] - ], - "2": [ - [ - { - "id": "test" - }, - "test_params_hashsolo.csv:md5,4b992e5daf73b8f23f5d847df32dc177" - ] - ], - "3": [ - "versions.yml:md5,f6178c11c8b15300ccafa689830c64e3" - ], "assignment": [ [ { "id": "test" }, - "test_assignment_hashsolo.csv:md5,dabd4b9a92e90c0030d86110fce3be40" + "test_assignment_hashsolo.csv:md5,0e6596227ff6f2f18afecac5109361e3" ] ], "h5ad": [ @@ -643,7 +205,7 @@ { "id": "test" }, - "test_hashsolo.h5ad:md5,2625d58a4d9f0e24c8bf4066f06c3e70" + "test_hashsolo.h5ad:md5,0e44592972cb4e72e1718e64632b7f9f" ] ], "params": [ @@ -659,10 +221,10 @@ ] } ], + "timestamp": "2026-08-16T13:48:56.977783", "meta": { - "nf-test": "0.9.2", - "nextflow": "25.04.6" - }, - "timestamp": "2025-08-11T06:12:44.782219305" + "nf-test": "0.9.5", + "nextflow": "26.04.0" + } } } \ No newline at end of file From db98f7a79c1622f9a7d0f9e001d49668b97e3775 Mon Sep 17 00:00:00 2001 From: Marcel Ribeiro-Dantas Date: Sun, 16 Aug 2026 15:16:54 -0300 Subject: [PATCH 2/4] Fix snapshot --- modules/nf-core/scanpy/hashsolo/meta.yml | 3 ++- modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/modules/nf-core/scanpy/hashsolo/meta.yml b/modules/nf-core/scanpy/hashsolo/meta.yml index 112a6b0e4ab1..9ef681a6a961 100644 --- a/modules/nf-core/scanpy/hashsolo/meta.yml +++ b/modules/nf-core/scanpy/hashsolo/meta.yml @@ -13,7 +13,8 @@ tools: documentation: "https://scanpy.readthedocs.io/en/stable/generated/scanpy.external.pp.hashsolo.html" tool_dev_url: "https://github.com/scverse/scanpy" doi: "10.1186/s13059-017-1382-0" - licence: ["BSD-3"] + licence: + - "BSD-3" identifier: biotools:scanpy input: diff --git a/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap b/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap index 18aae005bc96..54eb2c8f1391 100644 --- a/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap +++ b/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap @@ -31,7 +31,7 @@ ] } ], - "timestamp": "2026-08-16T13:48:49.223322", + "timestamp": "2026-08-16T15:14:21.41841", "meta": { "nf-test": "0.9.5", "nextflow": "26.04.0" From eb908e5aafd1185fcb69fd87defb1c1208a754dd Mon Sep 17 00:00:00 2001 From: Marcel Ribeiro-Dantas Date: Sun, 16 Aug 2026 15:39:44 -0300 Subject: [PATCH 3/4] Update snapshot/test --- .../scanpy/hashsolo/tests/main.nf.test | 8 +++--- .../scanpy/hashsolo/tests/main.nf.test.snap | 28 +++++++++---------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/modules/nf-core/scanpy/hashsolo/tests/main.nf.test b/modules/nf-core/scanpy/hashsolo/tests/main.nf.test index 6c82270d12ce..ee74967eb00b 100644 --- a/modules/nf-core/scanpy/hashsolo/tests/main.nf.test +++ b/modules/nf-core/scanpy/hashsolo/tests/main.nf.test @@ -50,7 +50,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(sanitizeOutput(process.out)).match() } + { assert snapshot(sanitizeOutput(process.out, unstableKeys: ["assignment", "h5ad"])).match() } ) } } @@ -93,7 +93,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(sanitizeOutput(process.out)).match() } + { assert snapshot(sanitizeOutput(process.out, unstableKeys: ["assignment", "h5ad"])).match() } ) } } @@ -158,7 +158,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(sanitizeOutput(process.out)).match() } + { assert snapshot(sanitizeOutput(process.out, unstableKeys: ["assignment", "h5ad"])).match() } ) } @@ -193,7 +193,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(sanitizeOutput(process.out)).match() } + { assert snapshot(sanitizeOutput(process.out, unstableKeys: ["assignment", "h5ad"])).match() } ) } diff --git a/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap b/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap index 54eb2c8f1391..96a6a4b5733c 100644 --- a/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap +++ b/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap @@ -7,7 +7,7 @@ { "id": "test" }, - "test_assignment_hashsolo.csv:md5,cdb1dd697d77d51bc69608b7014364e8" + "test_assignment_hashsolo.csv" ] ], "h5ad": [ @@ -15,7 +15,7 @@ { "id": "test" }, - "test_hashsolo.h5ad:md5,6982eabceeebc74bd74252033bbd139d" + "test_hashsolo.h5ad" ] ], "params": [ @@ -31,7 +31,7 @@ ] } ], - "timestamp": "2026-08-16T15:14:21.41841", + "timestamp": "2026-08-16T15:37:12.044264", "meta": { "nf-test": "0.9.5", "nextflow": "26.04.0" @@ -69,7 +69,7 @@ ] } ], - "timestamp": "2026-08-16T13:49:05.899747", + "timestamp": "2026-08-16T15:37:30.94362", "meta": { "nf-test": "0.9.5", "nextflow": "26.04.0" @@ -83,7 +83,7 @@ { "id": "test" }, - "test_assignment_hashsolo.csv:md5,e6ffa5719d0dc3d2236ced778327b50c" + "test_assignment_hashsolo.csv" ] ], "h5ad": [ @@ -91,7 +91,7 @@ { "id": "test" }, - "test_hashsolo.h5ad:md5,df3a1793ebfd8843bbc7371b2c8b6ffe" + "test_hashsolo.h5ad" ] ], "params": [ @@ -107,7 +107,7 @@ ] } ], - "timestamp": "2026-08-16T13:49:12.234179", + "timestamp": "2026-08-16T15:37:38.150623", "meta": { "nf-test": "0.9.5", "nextflow": "26.04.0" @@ -121,7 +121,7 @@ { "id": "test" }, - "test_assignment_hashsolo.csv:md5,8cdd1b5a8c910c2842518cb3caac541d" + "test_assignment_hashsolo.csv" ] ], "h5ad": [ @@ -129,7 +129,7 @@ { "id": "test" }, - "test_hashsolo.h5ad:md5,6a2d2b734d32c9b368361795deb7306d" + "test_hashsolo.h5ad" ] ], "params": [ @@ -145,7 +145,7 @@ ] } ], - "timestamp": "2026-08-16T13:49:18.473761", + "timestamp": "2026-08-16T15:37:45.568822", "meta": { "nf-test": "0.9.5", "nextflow": "26.04.0" @@ -183,7 +183,7 @@ ] } ], - "timestamp": "2026-08-16T13:49:25.887815", + "timestamp": "2026-08-16T15:37:53.71203", "meta": { "nf-test": "0.9.5", "nextflow": "26.04.0" @@ -197,7 +197,7 @@ { "id": "test" }, - "test_assignment_hashsolo.csv:md5,0e6596227ff6f2f18afecac5109361e3" + "test_assignment_hashsolo.csv" ] ], "h5ad": [ @@ -205,7 +205,7 @@ { "id": "test" }, - "test_hashsolo.h5ad:md5,0e44592972cb4e72e1718e64632b7f9f" + "test_hashsolo.h5ad" ] ], "params": [ @@ -221,7 +221,7 @@ ] } ], - "timestamp": "2026-08-16T13:48:56.977783", + "timestamp": "2026-08-16T15:37:21.324345", "meta": { "nf-test": "0.9.5", "nextflow": "26.04.0" From f021962e1b560d765b6bf0a1e3ae627ab29b9634 Mon Sep 17 00:00:00 2001 From: Marcel Ribeiro-Dantas Date: Mon, 17 Aug 2026 15:09:12 -0300 Subject: [PATCH 4/4] Apply reviewer suggestions --- .../scanpy/hashsolo/tests/main.nf.test | 3 ++- .../scanpy/hashsolo/tests/main.nf.test.snap | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/modules/nf-core/scanpy/hashsolo/tests/main.nf.test b/modules/nf-core/scanpy/hashsolo/tests/main.nf.test index ee74967eb00b..4aecd89f6270 100644 --- a/modules/nf-core/scanpy/hashsolo/tests/main.nf.test +++ b/modules/nf-core/scanpy/hashsolo/tests/main.nf.test @@ -158,7 +158,8 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(sanitizeOutput(process.out, unstableKeys: ["assignment", "h5ad"])).match() } + { assert snapshot(sanitizeOutput(process.out, unstableKeys: ["assignment", "h5ad"])).match() }, + { assert snapshot(process.out.versions.collect { path(it).yaml }).match("versions") } ) } diff --git a/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap b/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap index 96a6a4b5733c..1ca913b60622 100644 --- a/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap +++ b/modules/nf-core/scanpy/hashsolo/tests/main.nf.test.snap @@ -151,6 +151,25 @@ "nextflow": "26.04.0" } }, + "versions": { + "content": [ + [ + { + "SCANPY_HASHSOLO": { + "matplotlib": "3.10.5", + "pandas": "2.3.1", + "python": "3.12.11", + "scanpy": "1.11.2" + } + } + ] + ], + "timestamp": "2026-08-17T15:05:52.67443", + "meta": { + "nf-test": "0.9.5", + "nextflow": "26.04.1" + } + }, "hto_data_h5ad (generated, no real data) - stub": { "content": [ {