From d08502ce85dee771eb0433a8aba8a22f04135d12 Mon Sep 17 00:00:00 2001 From: avani-bhojwani Date: Thu, 28 Nov 2024 20:07:34 +1000 Subject: [PATCH 1/4] update trinity module --- modules.json | 3 +- modules/nf-core/trinity/environment.yml | 4 +- modules/nf-core/trinity/main.nf | 7 +- modules/nf-core/trinity/meta.yml | 59 +++++---- modules/nf-core/trinity/tests/main.nf.test | 60 +++++----- .../nf-core/trinity/tests/main.nf.test.snap | 112 ++++++++++++++---- modules/nf-core/trinity/trinity.diff | 28 ----- 7 files changed, 158 insertions(+), 115 deletions(-) delete mode 100644 modules/nf-core/trinity/trinity.diff diff --git a/modules.json b/modules.json index aeffd76..a549b70 100644 --- a/modules.json +++ b/modules.json @@ -71,9 +71,8 @@ }, "trinity": { "branch": "master", - "git_sha": "e06c5f45395d6e34531257b125d410a298a3bd4f", + "git_sha": "05a2da2a077047c9d637bb71626c65b7e4fc04c3", "installed_by": ["modules"], - "patch": "modules/nf-core/trinity/trinity.diff" } } }, diff --git a/modules/nf-core/trinity/environment.yml b/modules/nf-core/trinity/environment.yml index dd9f6cd..158e278 100644 --- a/modules/nf-core/trinity/environment.yml +++ b/modules/nf-core/trinity/environment.yml @@ -1,7 +1,5 @@ -name: trinity channels: - conda-forge - bioconda - - defaults dependencies: - - bioconda::trinity=2.15.1 + - bioconda::trinity=2.15.2 diff --git a/modules/nf-core/trinity/main.nf b/modules/nf-core/trinity/main.nf index 174ee15..a2a7695 100644 --- a/modules/nf-core/trinity/main.nf +++ b/modules/nf-core/trinity/main.nf @@ -1,14 +1,15 @@ process TRINITY { tag "$meta.id" + label 'process_high' label 'process_high_memory' conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/trinity:2.15.1--pl5321h146fbdb_3': - 'biocontainers/trinity:2.15.1--pl5321h146fbdb_3' }" + 'https://depot.galaxyproject.org/singularity/trinity:2.15.2--pl5321hdcf5f25_1': + 'biocontainers/trinity:2.15.2--pl5321hdcf5f25_1' }" input: - tuple val(meta), path(reads, stageAs: "input*/*") + tuple val(meta), path(reads, stageAs: "input*/*", arity: '1..*') output: tuple val(meta), path("*.fa.gz") , emit: transcript_fasta diff --git a/modules/nf-core/trinity/meta.yml b/modules/nf-core/trinity/meta.yml index 9630432..fdc254e 100644 --- a/modules/nf-core/trinity/meta.yml +++ b/modules/nf-core/trinity/meta.yml @@ -13,35 +13,44 @@ tools: tool_dev_url: "https://github.com/trinityrnaseq/trinityrnaseq/" doi: "10.1038/nbt.1883" licence: ["BSD-3-clause"] + identifier: biotools:trinity input: - - meta: - type: map - description: | - Groovy Map containing sample information - e.g. [ id:'test', single_end:false ] - - reads: - type: file - description: | - List of input fasta/fastq reads to be assembled into a transcriptome. - pattern: "*.{fa|fasta|fq|fastq}" + - - meta: + type: map + description: | + Groovy Map containing sample information + e.g. [ id:'test', single_end:false ] + - reads: + type: file + description: | + List of input fasta/fastq reads to be assembled into a transcriptome. + pattern: "*.{fa,fasta,fq,fastq}" output: - - meta: - type: map - description: | - Groovy Map containing sample information - e.g. [ id:'test', single_end:false ] - - versions: - type: file - description: File containing software versions - pattern: "versions.yml" - transcript_fasta: - type: file - description: de novo assembled transcripts fasta file compressed - pattern: "*.fa.gz" + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. [ id:'test', single_end:false ] + - "*.fa.gz": + type: file + description: de novo assembled transcripts fasta file compressed + pattern: "*.fa.gz" - log: - type: file - description: Log from trinity - pattern: "*.log" + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. [ id:'test', single_end:false ] + - "*.log": + type: file + description: Log from trinity + pattern: "*.log" + - versions: + - versions.yml: + type: file + description: File containing software versions + pattern: "versions.yml" authors: - "@timslittle" - "@gallvp" diff --git a/modules/nf-core/trinity/tests/main.nf.test b/modules/nf-core/trinity/tests/main.nf.test index 49e89a5..8717518 100644 --- a/modules/nf-core/trinity/tests/main.nf.test +++ b/modules/nf-core/trinity/tests/main.nf.test @@ -16,8 +16,8 @@ nextflow_process { input[0] = [ [ id:'test', single_end:false ], // meta map [ - file(params.test_data['homo_sapiens']['illumina']['test_rnaseq_1_fastq_gz'], checkIfExists: true), - file(params.test_data['homo_sapiens']['illumina']['test_rnaseq_2_fastq_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test_rnaseq_1.fastq.gz', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test_rnaseq_2.fastq.gz', checkIfExists: true) ] ] """ @@ -27,13 +27,12 @@ nextflow_process { then { assertAll( { assert process.success }, + { assert path(process.out.log[0][1]).text.contains("All commands completed successfully.") }, + { assert path(process.out.transcript_fasta[0][1]).linesGzip.toString().contains(">TRINITY_DN7_c0_g1_i1 len=299 path=[0:0-151 2:152-298]") }, { assert snapshot( process.out.versions - ).match("versions") - }, - { assert path(process.out.log[0][1]).text.contains("All commands completed successfully.") }, - { assert path(process.out.transcript_fasta[0][1]).linesGzip.toString().contains(">TRINITY_DN7_c0_g1_i1 len=299 path=[0:0-151 2:152-298]") } - + ).match() + } ) } } @@ -45,7 +44,7 @@ nextflow_process { input[0] = [ [ id:'test', single_end:true ], // meta map [ - file(params.test_data['homo_sapiens']['illumina']['test_rnaseq_1_fastq_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test_rnaseq_1.fastq.gz', checkIfExists: true) ] ] """ @@ -55,12 +54,12 @@ nextflow_process { then { assertAll( { assert process.success }, + { assert path(process.out.log[0][1]).text.contains("All commands completed successfully.") }, + { assert path(process.out.transcript_fasta[0][1]).linesGzip.toString().contains(">TRINITY_DN10_c0_g1_i1 len=534 path=[0:0-533]") }, { assert snapshot( process.out.versions - ).match("versions") + ).match() }, - { assert path(process.out.log[0][1]).text.contains("All commands completed successfully.") }, - { assert path(process.out.transcript_fasta[0][1]).linesGzip.toString().contains(">TRINITY_DN10_c0_g1_i1 len=534 path=[0:0-533]") } ) } } @@ -72,10 +71,10 @@ nextflow_process { input[0] = [ [ id:'test', single_end:false ], // meta map [ - file(params.test_data['homo_sapiens']['illumina']['test_rnaseq_1_fastq_gz'], checkIfExists: true), - file(params.test_data['homo_sapiens']['illumina']['test_rnaseq_2_fastq_gz'], checkIfExists: true), - file(params.test_data['homo_sapiens']['illumina']['test_rnaseq_1_fastq_gz'], checkIfExists: true), - file(params.test_data['homo_sapiens']['illumina']['test_rnaseq_2_fastq_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test_rnaseq_1.fastq.gz', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test_rnaseq_2.fastq.gz', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test_rnaseq_1.fastq.gz', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test_rnaseq_2.fastq.gz', checkIfExists: true) ] ] """ @@ -85,12 +84,12 @@ nextflow_process { then { assertAll( { assert process.success }, + { assert path(process.out.log[0][1]).text.contains("All commands completed successfully.") }, + { assert path(process.out.transcript_fasta[0][1]).linesGzip.toString().contains(">TRINITY_DN12_c0_g1_i1 len=225 path=[0:0-224]") }, { assert snapshot( process.out.versions - ).match("versions") - }, - { assert path(process.out.log[0][1]).text.contains("All commands completed successfully.") }, - { assert path(process.out.transcript_fasta[0][1]).linesGzip.toString().contains(">TRINITY_DN12_c0_g1_i1 len=225 path=[0:0-224]") } + ).match() + } ) } @@ -103,8 +102,8 @@ nextflow_process { input[0] = [ [ id:'test', single_end:true ], // meta map [ - file(params.test_data['homo_sapiens']['illumina']['test_rnaseq_1_fastq_gz'], checkIfExists: true), - file(params.test_data['homo_sapiens']['illumina']['test_rnaseq_1_fastq_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test_rnaseq_1.fastq.gz', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test_rnaseq_1.fastq.gz', checkIfExists: true) ] ] """ @@ -114,12 +113,12 @@ nextflow_process { then { assertAll( { assert process.success }, + { assert path(process.out.log[0][1]).text.contains("All commands completed successfully.") }, + { assert path(process.out.transcript_fasta[0][1]).linesGzip.toString().contains(">TRINITY_DN12_c0_g1_i1 len=268 path=[0:0-267]") }, { assert snapshot( process.out.versions - ).match("versions") - }, - { assert path(process.out.log[0][1]).text.contains("All commands completed successfully.") }, - { assert path(process.out.transcript_fasta[0][1]).linesGzip.toString().contains(">TRINITY_DN12_c0_g1_i1 len=268 path=[0:0-267]") } + ).match() + } ) } } @@ -134,8 +133,8 @@ nextflow_process { input[0] = [ [ id:'test', single_end:false ], // meta map [ - file(params.test_data['homo_sapiens']['illumina']['test_rnaseq_1_fastq_gz'], checkIfExists: true), - file(params.test_data['homo_sapiens']['illumina']['test_rnaseq_2_fastq_gz'], checkIfExists: true) + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test_rnaseq_1.fastq.gz', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/fastq/test_rnaseq_2.fastq.gz', checkIfExists: true) ] ] """ @@ -145,12 +144,7 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot( - process.out.transcript_fasta, - process.out.log - ).match() - }, - { assert snapshot(process.out.versions).match("versions") } + { assert snapshot(process.out).match() } ) } } diff --git a/modules/nf-core/trinity/tests/main.nf.test.snap b/modules/nf-core/trinity/tests/main.nf.test.snap index d543fc4..0166315 100644 --- a/modules/nf-core/trinity/tests/main.nf.test.snap +++ b/modules/nf-core/trinity/tests/main.nf.test.snap @@ -1,33 +1,103 @@ { - "versions": { + "homo_sapiens-test_rnaseq-paired-multiple": { "content": [ [ - "versions.yml:md5,f77f7a5b3e84ea0ee771e0df95895cfb" + "versions.yml:md5,1c631aefa156e739b773679c471467c1" ] ], - "timestamp": "2024-01-15T19:10:42.684367037" + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.2" + }, + "timestamp": "2024-11-28T14:08:11.163901364" }, - "homo_sapiens-test_rnaseq-stub": { + "homo_sapiens-test_rnaseq-single": { "content": [ [ - [ - { - "id": "test", - "single_end": false - }, - "test.fa.gz:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], + "versions.yml:md5,1c631aefa156e739b773679c471467c1" + ] + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.2" + }, + "timestamp": "2024-11-28T14:07:10.975441404" + }, + "homo_sapiens-test_rnaseq-paired": { + "content": [ [ - [ - { - "id": "test", - "single_end": false - }, - "test.log:md5,d41d8cd98f00b204e9800998ecf8427e" - ] + "versions.yml:md5,1c631aefa156e739b773679c471467c1" ] ], - "timestamp": "2024-01-15T19:11:49.900582628" + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.2" + }, + "timestamp": "2024-11-28T14:06:36.470824201" + }, + "homo_sapiens-test_rnaseq-single-multiple": { + "content": [ + [ + "versions.yml:md5,1c631aefa156e739b773679c471467c1" + ] + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.2" + }, + "timestamp": "2024-11-28T14:08:54.36318984" + }, + "homo_sapiens-test_rnaseq-stub": { + "content": [ + { + "0": [ + [ + { + "id": "test", + "single_end": false + }, + "test.fa.gz:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + [ + { + "id": "test", + "single_end": false + }, + "test.log:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "2": [ + "versions.yml:md5,1c631aefa156e739b773679c471467c1" + ], + "log": [ + [ + { + "id": "test", + "single_end": false + }, + "test.log:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "transcript_fasta": [ + [ + { + "id": "test", + "single_end": false + }, + "test.fa.gz:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,1c631aefa156e739b773679c471467c1" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.2" + }, + "timestamp": "2024-11-28T14:09:00.571900709" } -} \ No newline at end of file +} diff --git a/modules/nf-core/trinity/trinity.diff b/modules/nf-core/trinity/trinity.diff deleted file mode 100644 index 82333b7..0000000 --- a/modules/nf-core/trinity/trinity.diff +++ /dev/null @@ -1,28 +0,0 @@ -Changes in module 'nf-core/trinity' -Changes in 'trinity/main.nf': ---- modules/nf-core/trinity/main.nf -+++ modules/nf-core/trinity/main.nf -@@ -1,6 +1,5 @@ - process TRINITY { - tag "$meta.id" -- label 'process_high' - label 'process_high_memory' - - conda "${moduleDir}/environment.yml" -@@ -9,7 +8,7 @@ - 'biocontainers/trinity:2.15.1--pl5321h146fbdb_3' }" - - input: -- tuple val(meta), path(reads, stageAs: "input*/*", arity: '1..*') -+ tuple val(meta), path(reads, stageAs: "input*/*") - - output: - tuple val(meta), path("*.fa.gz") , emit: transcript_fasta - -'modules/nf-core/trinity/environment.yml' is unchanged -'modules/nf-core/trinity/meta.yml' is unchanged -'modules/nf-core/trinity/tests/tags.yml' is unchanged -'modules/nf-core/trinity/tests/main.nf.test.snap' is unchanged -'modules/nf-core/trinity/tests/nextflow.config' is unchanged -'modules/nf-core/trinity/tests/main.nf.test' is unchanged -************************************************************ From 939f54c88ce458ab7994fb75043ab858c896b05f Mon Sep 17 00:00:00 2001 From: avani-bhojwani Date: Thu, 28 Nov 2024 20:19:02 +1000 Subject: [PATCH 2/4] prettier linting modules.json --- modules.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules.json b/modules.json index a549b70..9c2b1ad 100644 --- a/modules.json +++ b/modules.json @@ -72,7 +72,7 @@ "trinity": { "branch": "master", "git_sha": "05a2da2a077047c9d637bb71626c65b7e4fc04c3", - "installed_by": ["modules"], + "installed_by": ["modules"] } } }, From 817dc57c743e0823dac1517a4b34dc5885a8df53 Mon Sep 17 00:00:00 2001 From: avani-bhojwani Date: Thu, 28 Nov 2024 20:23:47 +1000 Subject: [PATCH 3/4] add trinity update to changelog --- CHANGELOG.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4d6a820..7061f8d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## v1.1.0 - [2024-11-06] +## v1.1.0 - [2024-11-28] Enhancements & fixes: @@ -11,6 +11,13 @@ Enhancements & fixes: - [PR #15](https://github.com/nf-core/denovotranscript/pull/15) - Fix logic for skip_assembly parameter - [PR #16](https://github.com/nf-core/denovotranscript/pull/16) - Increase resources for Trinity - [PR #19](https://github.com/nf-core/denovotranscript/pull/21) - Fix Salmon quantification when running in skip_assembly mode +- [PR #24](https://github.com/nf-core/denovotranscript/pull/21) - Update Trinity module + +### Software dependencies + +| Dependency | Old version | New version | +| ---------- | ----------- | ----------- | +| `Trinity` | 2.15.1 | 2.15.2 | ## v1.0.0 - [2024-08-15] From 493d9f55817ff00a7ed093349ecfc15d80a6594b Mon Sep 17 00:00:00 2001 From: avani-bhojwani Date: Fri, 29 Nov 2024 08:48:04 +1000 Subject: [PATCH 4/4] add more detail to changelog --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7061f8d..292ed82 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,7 +11,7 @@ Enhancements & fixes: - [PR #15](https://github.com/nf-core/denovotranscript/pull/15) - Fix logic for skip_assembly parameter - [PR #16](https://github.com/nf-core/denovotranscript/pull/16) - Increase resources for Trinity - [PR #19](https://github.com/nf-core/denovotranscript/pull/21) - Fix Salmon quantification when running in skip_assembly mode -- [PR #24](https://github.com/nf-core/denovotranscript/pull/21) - Update Trinity module +- [PR #24](https://github.com/nf-core/denovotranscript/pull/21) - Update Trinity module and fix dependency issue ### Software dependencies