From 28493ee950ed989875c5a764f4dd320816b5c03c Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Thu, 16 May 2024 15:19:07 +0100 Subject: [PATCH 1/2] Update tximport subworkflow and module --- modules.json | 8 +- modules/nf-core/salmon/quant/main.nf | 12 + .../nf-core/salmon/quant/tests/main.nf.test | 142 +++++++++++- .../salmon/quant/tests/main.nf.test.snap | 75 +++++++ .../templates/summarizedexperiment.r | 3 + .../summarizedexperiment/tests/main.nf.test | 12 +- modules/nf-core/tximeta/tximport/main.nf | 4 + .../tximeta/tximport/tests/main.nf.test | 8 + .../tximeta/tximport/tests/main.nf.test.snap | 208 +++++++++++++++--- .../nf-core/quantify_pseudo_alignment/main.nf | 2 + .../tests/main.nf.test | 4 + .../tests/main.nf.test.snap | 36 ++- 12 files changed, 468 insertions(+), 46 deletions(-) diff --git a/modules.json b/modules.json index 0bf4e4448..33e37e6db 100644 --- a/modules.json +++ b/modules.json @@ -167,7 +167,7 @@ }, "salmon/quant": { "branch": "master", - "git_sha": "03a8562231d575c313266c193a980594b941e3ea", + "git_sha": "cb6b2b94fc40dea58f0b1e3dd095f3dd24f2ac8a", "installed_by": ["fastq_subsample_fq_salmon", "modules", "quantify_pseudo_alignment"] }, "samtools/flagstat": { @@ -226,7 +226,7 @@ }, "summarizedexperiment/summarizedexperiment": { "branch": "master", - "git_sha": "05a252a330273c67795aed2b18e86c53c4c9382a", + "git_sha": "31751460f9ce9552846e13fdeec6953dcb47132d", "installed_by": ["modules", "quantify_pseudo_alignment"] }, "trimgalore": { @@ -236,7 +236,7 @@ }, "tximeta/tximport": { "branch": "master", - "git_sha": "c275c3baac6df8f0c7c500760a0cf014ce7b525d", + "git_sha": "689323f8f89a120469b4c898cf7f19f758c3080e", "installed_by": ["modules", "quantify_pseudo_alignment"] }, "ucsc/bedclip": { @@ -329,7 +329,7 @@ }, "quantify_pseudo_alignment": { "branch": "master", - "git_sha": "bca4985339b3ba879f457565806deb2377873b83", + "git_sha": "0c3275555f670ac32270175390a14fa676404bac", "installed_by": ["subworkflows"] }, "utils_nextflow_pipeline": { diff --git a/modules/nf-core/salmon/quant/main.nf b/modules/nf-core/salmon/quant/main.nf index e115d39cf..e177b42ac 100644 --- a/modules/nf-core/salmon/quant/main.nf +++ b/modules/nf-core/salmon/quant/main.nf @@ -76,4 +76,16 @@ process SALMON_QUANT { salmon: \$(echo \$(salmon --version) | sed -e "s/salmon //g") END_VERSIONS """ + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + mkdir ${prefix} + touch ${prefix}_meta_info.json + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + salmon: \$(echo \$(salmon --version) | sed -e "s/salmon //g") + END_VERSIONS + """ } diff --git a/modules/nf-core/salmon/quant/tests/main.nf.test b/modules/nf-core/salmon/quant/tests/main.nf.test index fdc07db76..b387fac2a 100644 --- a/modules/nf-core/salmon/quant/tests/main.nf.test +++ b/modules/nf-core/salmon/quant/tests/main.nf.test @@ -3,8 +3,12 @@ nextflow_process { name "Test Process SALMON_QUANT" script "../main.nf" process "SALMON_QUANT" - tag "SALMON_INDEX" config "./nextflow.config" + tag "modules" + tag "modules_nfcore" + tag "salmon" + tag "salmon/quant" + tag "salmon/index" setup { run("SALMON_INDEX") { @@ -50,6 +54,38 @@ nextflow_process { } + test("sarscov2 - single_end stub") { + options "-stub" + when { + params { + outdir = "$outputDir" + } + process { + """ + input[0] = Channel.of([ + [ id:'test', single_end: true ], // meta map + [ file(params.modules_testdata_base_path + "genomics/sarscov2/illumina/fastq/test_1.fastq.gz", checkIfExists: true) ] + ]) + input[1] = SALMON_INDEX.out.index + input[2] = Channel.of([file(params.modules_testdata_base_path + "genomics/sarscov2/genome/genome.gtf", checkIfExists: true)]) + input[3] = Channel.of([file(params.modules_testdata_base_path + "genomics/sarscov2/genome/transcriptome.fasta", checkIfExists: true)]) + input[4] = false + input[5] = '' + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert path(process.out.json_info.get(0).get(1)).exists() }, + { assert path(process.out.results.get(0).get(1)).exists() }, + { assert snapshot(process.out.versions).match("versions_single_end_stub") } + ) + } + + } + test("sarscov2 - single_end lib type A") { when { @@ -82,6 +118,38 @@ nextflow_process { } + test("sarscov2 - single_end lib type A stub") { + options "-stub" + when { + params { + outdir = "$outputDir" + } + process { + """ + input[0] = Channel.of([ + [ id:'test', single_end: true ], // meta map + [ file(params.modules_testdata_base_path + "genomics/sarscov2/illumina/fastq/test_1.fastq.gz", checkIfExists: true) ] + ]) + input[1] = SALMON_INDEX.out.index + input[2] = Channel.of([file(params.modules_testdata_base_path + "genomics/sarscov2/genome/genome.gtf", checkIfExists: true)]) + input[3] = Channel.of([file(params.modules_testdata_base_path + "genomics/sarscov2/genome/transcriptome.fasta", checkIfExists: true)]) + input[4] = false + input[5] = 'A' + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert path(process.out.json_info.get(0).get(1)).exists() }, + { assert path(process.out.results.get(0).get(1)).exists() }, + { assert snapshot(process.out.versions).match("versions_single_end_lib_type_a_stub") } + ) + } + + } + test("sarscov2 - pair_end") { when { @@ -117,6 +185,41 @@ nextflow_process { } + test("sarscov2 - pair_end stub") { + options "-stub" + when { + params { + outdir = "$outputDir" + } + process { + """ + input[0] = Channel.of([ + [ id:'test', single_end: true ], // meta map + [ + file(params.modules_testdata_base_path + "genomics/sarscov2/illumina/fastq/test_1.fastq.gz", checkIfExists: true), + file(params.modules_testdata_base_path + "genomics/sarscov2/illumina/fastq/test_2.fastq.gz", checkIfExists: true) + ] + ]) + input[1] = SALMON_INDEX.out.index + input[2] = Channel.of([file(params.modules_testdata_base_path + "genomics/sarscov2/genome/genome.gtf", checkIfExists: true)]) + input[3] = Channel.of([file(params.modules_testdata_base_path + "genomics/sarscov2/genome/transcriptome.fasta", checkIfExists: true)]) + input[4] = false + input[5] = '' + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert path(process.out.json_info.get(0).get(1)).exists() }, + { assert path(process.out.results.get(0).get(1)).exists() }, + { assert snapshot(process.out.versions).match("versions_pair_end stub") } + ) + } + + } + test("sarscov2 - pair_end multiple") { when { @@ -153,4 +256,41 @@ nextflow_process { } } + + test("sarscov2 - pair_end multiple stub") { + options "-stub" + when { + params { + outdir = "$outputDir" + } + process { + """ + input[0] = Channel.of([ + [ id:'test', single_end:false ], // meta map + [ + file(params.modules_testdata_base_path + "genomics/sarscov2/illumina/fastq/test_1.fastq.gz", checkIfExists: true), + file(params.modules_testdata_base_path + "genomics/sarscov2/illumina/fastq/test_2.fastq.gz", checkIfExists: true), + file(params.modules_testdata_base_path + "genomics/sarscov2/illumina/fastq/test2_1.fastq.gz", checkIfExists: true), + file(params.modules_testdata_base_path + "genomics/sarscov2/illumina/fastq/test2_2.fastq.gz", checkIfExists: true) + ] + ]) + input[1] = SALMON_INDEX.out.index + input[2] = Channel.of([file(params.modules_testdata_base_path + "genomics/sarscov2/genome/genome.gtf", checkIfExists: true)]) + input[3] = Channel.of([file(params.modules_testdata_base_path + "genomics/sarscov2/genome/transcriptome.fasta", checkIfExists: true)]) + input[4] = false + input[5] = '' + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert path(process.out.json_info.get(0).get(1)).exists() }, + { assert path(process.out.results.get(0).get(1)).exists() }, + { assert snapshot(process.out.versions).match("versions_pair_end_multiple_stub") } + ) + } + + } } diff --git a/modules/nf-core/salmon/quant/tests/main.nf.test.snap b/modules/nf-core/salmon/quant/tests/main.nf.test.snap index a1ec792e0..a80bc8aa8 100644 --- a/modules/nf-core/salmon/quant/tests/main.nf.test.snap +++ b/modules/nf-core/salmon/quant/tests/main.nf.test.snap @@ -1,4 +1,43 @@ { + "versions_single_end_lib_type_a_stub": { + "content": [ + [ + "versions.yml:md5,80eb3d2ad36960c7e9263f81ede9d263" + ] + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "23.10.1" + }, + "timestamp": "2024-04-24T14:34:21.647863" + }, + "versions_pair_end_multiple_stub": { + "content": [ + [ + "versions.yml:md5,80eb3d2ad36960c7e9263f81ede9d263" + ] + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "23.10.1" + }, + "timestamp": "2024-04-24T14:34:48.03415" + }, + "sarscov2 - single_end stub": { + "content": [ + [ + + ], + [ + + ] + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "23.10.1" + }, + "timestamp": "2024-04-23T09:34:16.444372" + }, "versions_single_end": { "content": [ [ @@ -23,6 +62,42 @@ }, "timestamp": "2024-02-06T17:10:56.121713" }, + "versions_pair_end_stub": { + "content": [ + [ + + ] + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "23.10.1" + }, + "timestamp": "2024-04-23T08:38:01.276656" + }, + "versions_pair_end stub": { + "content": [ + [ + "versions.yml:md5,80eb3d2ad36960c7e9263f81ede9d263" + ] + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "23.10.1" + }, + "timestamp": "2024-04-24T14:34:36.570127" + }, + "versions_single_end_stub": { + "content": [ + [ + "versions.yml:md5,80eb3d2ad36960c7e9263f81ede9d263" + ] + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "23.10.1" + }, + "timestamp": "2024-04-24T14:28:01.864343" + }, "versions_single_end_lib_type_a": { "content": [ [ diff --git a/modules/nf-core/summarizedexperiment/summarizedexperiment/templates/summarizedexperiment.r b/modules/nf-core/summarizedexperiment/summarizedexperiment/templates/summarizedexperiment.r index 58cd8473b..6c705350a 100644 --- a/modules/nf-core/summarizedexperiment/summarizedexperiment/templates/summarizedexperiment.r +++ b/modules/nf-core/summarizedexperiment/summarizedexperiment/templates/summarizedexperiment.r @@ -121,6 +121,9 @@ parse_metadata <- function(metadata_path, ids, metadata_id_col = NULL){ metadata_id_col <- findColumnWithAllEntries(ids, metadata) } + # Remove any all-NA columns + metadata <- metadata[, colSums(is.na(metadata)) != nrow(metadata)] + # Allow for duplicate rows by the id column metadata <- aggregate( . ~ metadata[[metadata_id_col]], diff --git a/modules/nf-core/summarizedexperiment/summarizedexperiment/tests/main.nf.test b/modules/nf-core/summarizedexperiment/summarizedexperiment/tests/main.nf.test index 4dda21181..b51a76cda 100644 --- a/modules/nf-core/summarizedexperiment/summarizedexperiment/tests/main.nf.test +++ b/modules/nf-core/summarizedexperiment/summarizedexperiment/tests/main.nf.test @@ -3,9 +3,15 @@ nextflow_process { name "Test Process SUMMARIZEDEXPERIMENT_SUMMARIZEDEXPERIMENT" script "../main.nf" process "SUMMARIZEDEXPERIMENT_SUMMARIZEDEXPERIMENT" - tag "UNTAR" - tag "CUSTOM_TX2GENE" - tag "TXIMETA_TXIMPORT" + + tag "modules" + tag "modules_nfcore" + tag "custom/tx2gene" + tag "tximeta" + tag "tximeta/tximport" + tag "summarizedexperiment" + tag "summarizedexperiment/summarizedexperiment" + tag "untar" setup { diff --git a/modules/nf-core/tximeta/tximport/main.nf b/modules/nf-core/tximeta/tximport/main.nf index b0cce8536..6d9ab8d78 100644 --- a/modules/nf-core/tximeta/tximport/main.nf +++ b/modules/nf-core/tximeta/tximport/main.nf @@ -13,6 +13,8 @@ process TXIMETA_TXIMPORT { output: tuple val(meta), path("*gene_tpm.tsv") , emit: tpm_gene + tuple val(meta), path("*gene_tpm_scaled.tsv") , emit: tpm_gene_scaled + tuple val(meta), path("*gene_tpm_length_scaled.tsv") , emit: tpm_gene_length_scaled tuple val(meta), path("*gene_counts.tsv") , emit: counts_gene tuple val(meta), path("*gene_counts_length_scaled.tsv"), emit: counts_gene_length_scaled tuple val(meta), path("*gene_counts_scaled.tsv") , emit: counts_gene_scaled @@ -31,6 +33,8 @@ process TXIMETA_TXIMPORT { stub: """ touch ${meta.id}.gene_tpm.tsv + touch ${meta.id}.gene_tpm_scaled.tsv + touch ${meta.id}.gene_tpm_length_scaled.tsv touch ${meta.id}.gene_counts.tsv touch ${meta.id}.gene_counts_length_scaled.tsv touch ${meta.id}.gene_counts_scaled.tsv diff --git a/modules/nf-core/tximeta/tximport/tests/main.nf.test b/modules/nf-core/tximeta/tximport/tests/main.nf.test index 5cf6af83e..e332e0b75 100644 --- a/modules/nf-core/tximeta/tximport/tests/main.nf.test +++ b/modules/nf-core/tximeta/tximport/tests/main.nf.test @@ -64,6 +64,8 @@ nextflow_process { { assert snapshot(process.out.lengths_gene).match('lengths_gene_kallisto') }, { assert snapshot(process.out.lengths_transcript).match('lengths_transcript_kallisto') }, { assert snapshot(process.out.tpm_gene).match('tpm_gene_kallisto') }, + { assert snapshot(process.out.tpm_gene_scaled).match('tpm_gene_scaled_kallisto') }, + { assert snapshot(process.out.tpm_gene_length_scaled).match('tpm_gene_length_scaled_kallisto') }, { assert snapshot(process.out.tpm_transcript).match('tpm_transcript_kallisto') }, { assert snapshot(process.out.versions).match('versions_kallisto') } ) @@ -94,6 +96,8 @@ nextflow_process { { assert snapshot(process.out.lengths_gene).match('lengths_gene_kallisto - stub') }, { assert snapshot(process.out.lengths_transcript).match('lengths_transcript_kallisto - stub') }, { assert snapshot(process.out.tpm_gene).match('tpm_gene_kallisto - stub') }, + { assert snapshot(process.out.tpm_gene_scaled).match('tpm_gene_scaled_kallisto - stub') }, + { assert snapshot(process.out.tpm_gene_length_scaled).match('tpm_gene_length_scaled_kallisto - stub') }, { assert snapshot(process.out.tpm_transcript).match('tpm_transcript_kallisto - stub') }, { assert snapshot(process.out.versions).match('versions_kallisto - stub') } ) @@ -153,6 +157,8 @@ nextflow_process { { assert snapshot(process.out.lengths_gene).match('lengths_gene_salmon') }, { assert snapshot(process.out.lengths_transcript).match('lengths_transcript_salmon') }, { assert snapshot(process.out.tpm_gene).match('tpm_gene_salmon') }, + { assert snapshot(process.out.tpm_gene_scaled).match('tpm_gene_scaled_salmon') }, + { assert snapshot(process.out.tpm_gene_length_scaled).match('tpm_gene_length_scaled_salmon') }, { assert snapshot(process.out.tpm_transcript).match('tpm_transcript_salmon') }, { assert snapshot(process.out.versions).match('versions_salmon') } ) @@ -184,6 +190,8 @@ nextflow_process { { assert snapshot(process.out.lengths_gene).match('lengths_gene_salmon - stub') }, { assert snapshot(process.out.lengths_transcript).match('lengths_transcript_salmon - stub') }, { assert snapshot(process.out.tpm_gene).match('tpm_gene_salmon - stub') }, + { assert snapshot(process.out.tpm_gene_scaled).match('tpm_gene_scaled_salmon - stub') }, + { assert snapshot(process.out.tpm_gene_length_scaled).match('tpm_gene_length_scaled_salmon - stub') }, { assert snapshot(process.out.tpm_transcript).match('tpm_transcript_salmon - stub') }, { assert snapshot(process.out.versions).match('versions_salmon - stub') } ) diff --git a/modules/nf-core/tximeta/tximport/tests/main.nf.test.snap b/modules/nf-core/tximeta/tximport/tests/main.nf.test.snap index fe972d09e..bd3e6ac81 100644 --- a/modules/nf-core/tximeta/tximport/tests/main.nf.test.snap +++ b/modules/nf-core/tximeta/tximport/tests/main.nf.test.snap @@ -1,4 +1,21 @@ { + "tpm_gene_scaled_salmon - stub": { + "content": [ + [ + [ + [ + + ], + "[].gene_tpm_scaled.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ] + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "23.10.1" + }, + "timestamp": "2024-05-15T17:06:10.039734" + }, "tpm_transcript_salmon - stub": { "content": [ [ @@ -14,7 +31,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:54.169267" + "timestamp": "2024-05-15T17:06:10.054273" }, "lengths_gene_kallisto - stub": { "content": [ @@ -31,7 +48,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:20.838048" + "timestamp": "2024-05-15T17:05:34.844905" }, "counts_gene_scaled_salmon - stub": { "content": [ @@ -48,7 +65,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:54.139493" + "timestamp": "2024-05-15T17:06:10.004285" }, "counts_gene_kallisto - stub": { "content": [ @@ -65,7 +82,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:20.823542" + "timestamp": "2024-05-15T17:05:34.830142" }, "lengths_transcript_salmon - stub": { "content": [ @@ -82,7 +99,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:54.157265" + "timestamp": "2024-05-15T17:06:10.024984" }, "versions_salmon - stub": { "content": [ @@ -94,7 +111,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:54.175019" + "timestamp": "2024-05-15T17:06:10.06179" }, "counts_gene_length_scaled_kallisto": { "content": [ @@ -111,7 +128,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:04.116135" + "timestamp": "2024-05-15T17:05:18.069055" }, "lengths_transcript_salmon": { "content": [ @@ -128,7 +145,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:37.664041" + "timestamp": "2024-05-15T17:05:51.926442" }, "counts_transcript_kallisto": { "content": [ @@ -145,7 +162,24 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:04.162273" + "timestamp": "2024-05-15T17:05:18.072017" + }, + "tpm_gene_scaled_salmon": { + "content": [ + [ + [ + { + "id": "test" + }, + "test.gene_tpm_scaled.tsv:md5,6076364cc78741a4f8bc8935a045d13d" + ] + ] + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "23.10.1" + }, + "timestamp": "2024-05-15T17:05:51.939292" }, "counts_transcript_kallisto - stub": { "content": [ @@ -162,7 +196,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:20.834743" + "timestamp": "2024-05-15T17:05:34.841028" }, "counts_transcript_salmon": { "content": [ @@ -179,7 +213,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:37.652813" + "timestamp": "2024-05-15T17:05:51.914566" }, "lengths_gene_salmon - stub": { "content": [ @@ -196,7 +230,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:54.151603" + "timestamp": "2024-05-15T17:06:10.017072" }, "tpm_gene_salmon": { "content": [ @@ -213,7 +247,24 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:37.669821" + "timestamp": "2024-05-15T17:05:51.932867" + }, + "tpm_gene_length_scaled_salmon": { + "content": [ + [ + [ + { + "id": "test" + }, + "test.gene_tpm_length_scaled.tsv:md5,6076364cc78741a4f8bc8935a045d13d" + ] + ] + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "23.10.1" + }, + "timestamp": "2024-05-15T17:05:51.946446" }, "tpm_transcript_salmon": { "content": [ @@ -230,7 +281,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:37.674895" + "timestamp": "2024-05-15T17:05:51.953143" }, "tpm_gene_salmon - stub": { "content": [ @@ -247,7 +298,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:54.163303" + "timestamp": "2024-05-15T17:06:10.032111" }, "lengths_transcript_kallisto": { "content": [ @@ -264,7 +315,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:04.1686" + "timestamp": "2024-05-15T17:05:18.075618" }, "counts_gene_length_scaled_kallisto - stub": { "content": [ @@ -281,7 +332,24 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:20.827742" + "timestamp": "2024-05-15T17:05:34.833979" + }, + "tpm_gene_scaled_kallisto - stub": { + "content": [ + [ + [ + [ + + ], + "[].gene_tpm_scaled.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ] + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "23.10.1" + }, + "timestamp": "2024-05-15T17:05:34.85604" }, "tpm_gene_kallisto - stub": { "content": [ @@ -298,7 +366,41 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:20.846428" + "timestamp": "2024-05-15T17:05:34.852369" + }, + "tpm_gene_length_scaled_salmon - stub": { + "content": [ + [ + [ + [ + + ], + "[].gene_tpm_length_scaled.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ] + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "23.10.1" + }, + "timestamp": "2024-05-15T17:06:10.046936" + }, + "tpm_gene_length_scaled_kallisto": { + "content": [ + [ + [ + { + "id": "test" + }, + "test.gene_tpm_length_scaled.tsv:md5,85d108269769ae0d841247b9b9ed922d" + ] + ] + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "23.10.1" + }, + "timestamp": "2024-05-15T17:05:18.083493" }, "counts_transcript_salmon - stub": { "content": [ @@ -315,7 +417,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:54.145564" + "timestamp": "2024-05-15T17:06:10.010515" }, "counts_gene_scaled_kallisto": { "content": [ @@ -332,7 +434,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:04.159638" + "timestamp": "2024-05-15T17:05:18.070165" }, "counts_gene_salmon": { "content": [ @@ -349,7 +451,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:37.636972" + "timestamp": "2024-05-15T17:05:51.897485" }, "versions_salmon": { "content": [ @@ -361,7 +463,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:37.680246" + "timestamp": "2024-05-15T17:05:51.960123" }, "counts_gene_length_scaled_salmon": { "content": [ @@ -378,7 +480,24 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:37.642848" + "timestamp": "2024-05-15T17:05:51.903299" + }, + "tpm_gene_scaled_kallisto": { + "content": [ + [ + [ + { + "id": "test" + }, + "test.gene_tpm_scaled.tsv:md5,85d108269769ae0d841247b9b9ed922d" + ] + ] + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "23.10.1" + }, + "timestamp": "2024-05-15T17:05:18.080714" }, "tpm_gene_kallisto": { "content": [ @@ -395,7 +514,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:04.172531" + "timestamp": "2024-05-15T17:05:18.078242" }, "lengths_transcript_kallisto - stub": { "content": [ @@ -412,7 +531,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:20.842475" + "timestamp": "2024-05-15T17:05:34.848752" }, "lengths_gene_kallisto": { "content": [ @@ -429,7 +548,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:04.16551" + "timestamp": "2024-05-15T17:05:18.073669" }, "counts_gene_scaled_kallisto - stub": { "content": [ @@ -446,7 +565,24 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:20.831518" + "timestamp": "2024-05-15T17:05:34.837599" + }, + "tpm_gene_length_scaled_kallisto - stub": { + "content": [ + [ + [ + [ + + ], + "[].gene_tpm_length_scaled.tsv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ] + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "23.10.1" + }, + "timestamp": "2024-05-15T17:05:34.859965" }, "tpm_transcript_kallisto": { "content": [ @@ -463,7 +599,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:04.177955" + "timestamp": "2024-05-15T17:05:18.086227" }, "lengths_gene_salmon": { "content": [ @@ -480,7 +616,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:37.658624" + "timestamp": "2024-05-15T17:05:51.920866" }, "counts_gene_length_scaled_salmon - stub": { "content": [ @@ -497,7 +633,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:54.13369" + "timestamp": "2024-05-15T17:06:09.998062" }, "counts_gene_kallisto": { "content": [ @@ -514,7 +650,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:04.113216" + "timestamp": "2024-05-15T17:05:18.066975" }, "versions_kallisto": { "content": [ @@ -526,7 +662,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:04.181904" + "timestamp": "2024-05-15T17:05:18.089743" }, "counts_gene_salmon - stub": { "content": [ @@ -543,7 +679,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:54.127272" + "timestamp": "2024-05-15T17:06:09.989799" }, "versions_kallisto - stub": { "content": [ @@ -555,7 +691,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:20.86053" + "timestamp": "2024-05-15T17:05:34.86895" }, "tpm_transcript_kallisto - stub": { "content": [ @@ -572,7 +708,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:20.856075" + "timestamp": "2024-05-15T17:05:34.864527" }, "counts_gene_scaled_salmon": { "content": [ @@ -589,6 +725,6 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-03-11T11:35:37.647691" + "timestamp": "2024-05-15T17:05:51.908075" } } \ No newline at end of file diff --git a/subworkflows/nf-core/quantify_pseudo_alignment/main.nf b/subworkflows/nf-core/quantify_pseudo_alignment/main.nf index b245b9bad..4d9e6c819 100644 --- a/subworkflows/nf-core/quantify_pseudo_alignment/main.nf +++ b/subworkflows/nf-core/quantify_pseudo_alignment/main.nf @@ -106,6 +106,8 @@ workflow QUANTIFY_PSEUDO_ALIGNMENT { multiqc = ch_pseudo_multiqc // channel: [ val(meta), files_for_multiqc ] tpm_gene = TXIMETA_TXIMPORT.out.tpm_gene // path: *gene_tpm.tsv + tpm_gene_scaled = TXIMETA_TXIMPORT.out.tpm_gene_scaled // path: *gene_tpm_scaled.tsv + tpm_gene_length_scaled = TXIMETA_TXIMPORT.out.tpm_gene_length_scaled // path: *gene_tpm_length_scaled.tsv counts_gene = TXIMETA_TXIMPORT.out.counts_gene // path: *gene_counts.tsv lengths_gene = TXIMETA_TXIMPORT.out.lengths_gene // path: *gene_lengths.tsv counts_gene_length_scaled = TXIMETA_TXIMPORT.out.counts_gene_length_scaled // path: *gene_counts_length_scaled.tsv diff --git a/subworkflows/nf-core/quantify_pseudo_alignment/tests/main.nf.test b/subworkflows/nf-core/quantify_pseudo_alignment/tests/main.nf.test index 26441b1ec..aed0b162d 100644 --- a/subworkflows/nf-core/quantify_pseudo_alignment/tests/main.nf.test +++ b/subworkflows/nf-core/quantify_pseudo_alignment/tests/main.nf.test @@ -63,6 +63,8 @@ nextflow_workflow { { assert workflow.success }, { assert snapshot( workflow.out.tpm_gene, + workflow.out.tpm_gene_scaled, + workflow.out.tpm_gene_length_scaled, workflow.out.counts_gene, workflow.out.lengths_gene, workflow.out.counts_gene_length_scaled, @@ -132,6 +134,8 @@ nextflow_workflow { { assert workflow.success }, { assert snapshot( workflow.out.tpm_gene, + workflow.out.tpm_gene_scaled, + workflow.out.tpm_gene_length_scaled, workflow.out.counts_gene, workflow.out.lengths_gene, workflow.out.counts_gene_length_scaled, diff --git a/subworkflows/nf-core/quantify_pseudo_alignment/tests/main.nf.test.snap b/subworkflows/nf-core/quantify_pseudo_alignment/tests/main.nf.test.snap index 90d1e421c..4c0b1daee 100644 --- a/subworkflows/nf-core/quantify_pseudo_alignment/tests/main.nf.test.snap +++ b/subworkflows/nf-core/quantify_pseudo_alignment/tests/main.nf.test.snap @@ -9,6 +9,22 @@ "all_samples.gene_tpm.tsv:md5,23fa0c64cfbd198806b53897de791b8b" ] ], + [ + [ + { + "id": "all_samples" + }, + "all_samples.gene_tpm_scaled.tsv:md5,23fa0c64cfbd198806b53897de791b8b" + ] + ], + [ + [ + { + "id": "all_samples" + }, + "all_samples.gene_tpm_length_scaled.tsv:md5,23fa0c64cfbd198806b53897de791b8b" + ] + ], [ [ { @@ -64,7 +80,7 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-04-03T17:29:13.487959" + "timestamp": "2024-05-16T11:00:38.264567" }, "salmon": { "content": [ @@ -76,6 +92,22 @@ "all_samples.gene_tpm.tsv:md5,9711ed8364c3a1ea4fc87bd5e0780835" ] ], + [ + [ + { + "id": "all_samples" + }, + "all_samples.gene_tpm_scaled.tsv:md5,9711ed8364c3a1ea4fc87bd5e0780835" + ] + ], + [ + [ + { + "id": "all_samples" + }, + "all_samples.gene_tpm_length_scaled.tsv:md5,9711ed8364c3a1ea4fc87bd5e0780835" + ] + ], [ [ { @@ -133,6 +165,6 @@ "nf-test": "0.8.4", "nextflow": "23.10.1" }, - "timestamp": "2024-04-03T17:28:43.74907" + "timestamp": "2024-05-16T11:00:09.117121" } } \ No newline at end of file From 13741494ca29b6638bc8e19723ff09e4e1e06d83 Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Thu, 16 May 2024 15:24:30 +0100 Subject: [PATCH 2/2] Update Changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index bf7a588ab..7205428bf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -69,6 +69,7 @@ Thank you to everyone else that has contributed by reporting bugs, enhancements - [PR #1283](https://github.com/nf-core/rnaseq/pull/1283) - Add output files to nf-test snapshot - [PR #1293](https://github.com/nf-core/rnaseq/pull/1293) - Update subworkflow utils_nfcore_pipeline - [PR #1297](https://github.com/nf-core/rnaseq/pull/1297) - Important! Template update for nf-core/tools v2.14.1 +- [PR #1302](https://github.com/nf-core/rnaseq/pull/1302) - Add missing files from Tximport processing ### Parameters