diff --git a/CHANGELOG.md b/CHANGELOG.md
index de1cc28..6302447 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -3,6 +3,10 @@
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.0.4 - 2024-04-21
+
+- Fixed incorrect assignment of cluster groups (Issue #131).
+
## v1.0.3 - 2024-02-23
- Improved TPM file splitting performance (Issue #120).
diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml
index 059da2f..2d69911 100644
--- a/assets/multiqc_config.yml
+++ b/assets/multiqc_config.yml
@@ -1,7 +1,7 @@
report_comment: >
- This report has been generated by the nf-core/rnasplice
+ This report has been generated by the nf-core/rnasplice
analysis pipeline. For information about how to interpret these results, please see the
- documentation.
+ documentation.
report_section_order:
"nf-core-rnasplice-methods-description":
diff --git a/modules/local/suppa_clusterevents.nf b/modules/local/suppa_clusterevents.nf
index b459812..6aa9bef 100644
--- a/modules/local/suppa_clusterevents.nf
+++ b/modules/local/suppa_clusterevents.nf
@@ -11,7 +11,7 @@ process CLUSTEREVENTS {
input:
tuple val(cond1), val(cond2), path(dpsi)
tuple val(cond1), val(cond2), path(psivec)
- val group_ranges // e.g. 1-3,4-6
+ tuple val(cond1), val(cond2), val(group_ranges) // e.g. 1-3,4-6
val prefix
val clusterevents_dpsithreshold // val params.clusterevents_dpsithreshold
val clusterevents_eps // val params.clusterevents_eps
diff --git a/modules/local/suppa_clustergroups.nf b/modules/local/suppa_clustergroups.nf
index a556bdc..fe45ea8 100644
--- a/modules/local/suppa_clustergroups.nf
+++ b/modules/local/suppa_clustergroups.nf
@@ -11,7 +11,7 @@ process CLUSTERGROUPS {
tuple val(cond1), val(cond2), path(psivec)
output:
- stdout
+ tuple val(cond1), val(cond2), stdout
when:
task.ext.when == null || task.ext.when
diff --git a/nextflow.config b/nextflow.config
index 2f63b75..800e272 100644
--- a/nextflow.config
+++ b/nextflow.config
@@ -356,7 +356,7 @@ manifest {
description = """Alternative splicing analysis using RNA-seq."""
mainScript = 'main.nf'
nextflowVersion = '!>=23.04.0'
- version = '1.0.3'
+ version = '1.0.4'
doi = '10.5281/zenodo.8424632'
}
diff --git a/subworkflows/local/suppa.nf b/subworkflows/local/suppa.nf
index fe98a88..9483970 100644
--- a/subworkflows/local/suppa.nf
+++ b/subworkflows/local/suppa.nf
@@ -209,6 +209,15 @@ workflow SUPPA {
ch_groups_ioe = CLUSTERGROUPS_IOE.out
+ // Join channels to ensure consistent order
+
+ ch_clusterevents_ioe = ch_dpsi_local.join(ch_psivec_local, by: [0, 1]).join(ch_groups_ioe, by: [0, 1])
+
+ // Splitting the joined channel back into three separate channels
+ ch_dpsi_local = ch_clusterevents_ioe.map { it -> [it[0], it[1], it[2]] }
+ ch_psivec_local = ch_clusterevents_ioe.map { it -> [it[0], it[1], it[3]] }
+ ch_groups_ioe = ch_clusterevents_ioe.map { it -> [it[0], it[1], it[4]] }
+
// Run Clustering
CLUSTEREVENTS_IOE(
@@ -360,6 +369,15 @@ workflow SUPPA {
ch_groups_ioi = CLUSTERGROUPS_IOI.out
+ // Join channels to ensure consistent order
+
+ ch_clusterevents_ioi = ch_dpsi_isoform.join(ch_psivec_isoform, by: [0, 1]).join(ch_groups_ioi, by: [0, 1])
+
+ // Splitting the joined channel back into three separate channels
+ ch_dpsi_isoform = ch_clusterevents_ioi.map { it -> [it[0], it[1], it[2]] }
+ ch_psivec_isoform = ch_clusterevents_ioi.map { it -> [it[0], it[1], it[3]] }
+ ch_groups_ioi = ch_clusterevents_ioi.map { it -> [it[0], it[1], it[4]] }
+
// Run Clustering
CLUSTEREVENTS_IOI(