Skip to content

Commit 83f2699

Browse files
authored
Merge pull request #910 from nf-core/hotfix
Release 3.1.2
2 parents 986579a + 64f0e90 commit 83f2699

14 files changed

Lines changed: 199 additions & 22 deletions

File tree

.github/workflows/nf-test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ jobs:
5050
env:
5151
NFT_VER: ${{ env.NFT_VER }}
5252
with:
53-
max_shards: 20
53+
max_shards: 25
5454

5555
- name: debug
5656
run: |

.nf-core.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,4 @@ template:
1818
name: raredisease
1919
org: nf-core
2020
outdir: .
21-
version: 3.1.1
21+
version: 3.1.2

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,13 @@
33
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
44
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
55

6+
## 3.1.2 - Princess Peach (patch) [2026-07-06]
7+
8+
### `Fixed`
9+
10+
- Fix `svdb/merge` mislabelling VCF caller tags by passing `sort_inputs = false` to `SVDB_MERGE` in `call_structural_variants`; the VCF list is already in the correct caller-priority order from the upstream `concat` chain, so in-module re-sorting by filename was causing tag misassignment [#910](https://github.com/nf-core/raredisease/pull/910)
11+
- Changed filter logic for merging mitochondrial snvs to report variants which pass filter in at least one sample [#915](https://github.com/nf-core/raredisease/pull/915)
12+
613
## 3.1.1 - Princess Peach (patch) [2026-06-24]
714

815
### `Fixed`

assets/multiqc_config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ custom_logo: "nf-core-raredisease_logo_light.png"
22
custom_logo_url: https://github.com/nf-core/raredisease/
33
custom_logo_title: "nf-core/raredisease"
44
report_comment: >
5-
This report has been generated by the <a href="https://github.com/nf-core/raredisease/releases/tag/3.1.1" target="_blank">nf-core/raredisease</a> analysis pipeline. For information about how to interpret these results, please see the <a href="https://nf-co.re/raredisease/3.1.1/docs/output" target="_blank">documentation</a>.
5+
This report has been generated by the <a href="https://github.com/nf-core/raredisease/releases/tag/3.1.2" target="_blank">nf-core/raredisease</a> analysis pipeline. For information about how to interpret these results, please see the <a href="https://nf-co.re/raredisease/3.1.2/docs/output" target="_blank">documentation</a>.
66
77
report_section_order:
88
"nf-core-raredisease-methods-description":

conf/modules/postprocess_MT_calls.config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ process {
4141
}
4242

4343
withName: '.*POSTPROCESS_MT_CALLS:BCFTOOLS_MERGE_MT' {
44-
ext.args = '--output-type z --write-index=tbi'
44+
ext.args = '--output-type z --write-index=tbi --filter-logic x'
4545
ext.prefix = { "${meta.id}_split_rmdup_merged" }
4646
}
4747

nextflow.config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -485,7 +485,7 @@ manifest {
485485
mainScript = 'main.nf'
486486
defaultBranch = 'master'
487487
nextflowVersion = '!>=25.10.4'
488-
version = '3.1.1'
488+
version = '3.1.2'
489489
doi = '10.5281/zenodo.7995798'
490490
}
491491

ro-crate-metadata.json

Lines changed: 10 additions & 10 deletions
Large diffs are not rendered by default.

subworkflows/local/call_structural_variants/main.nf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ workflow CALL_STRUCTURAL_VARIANTS {
134134
ch_case_info
135135
.combine(ch_vcf_paths)
136136
.set { ch_merge_vcfs_in }
137-
SVDB_MERGE (ch_merge_vcfs_in, ch_svcaller_priority, true)
137+
SVDB_MERGE (ch_merge_vcfs_in, ch_svcaller_priority, false)
138138

139139
TABIX_TABIX (SVDB_MERGE.out.vcf)
140140
ch_merged_svs = SVDB_MERGE.out.vcf

subworkflows/local/call_structural_variants/tests/main.nf.test

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,102 @@ nextflow_workflow {
1010
tag "call_sv_tiddit"
1111
tag "call_sv_germlinecnvcaller"
1212
tag "call_sv_cnvnator"
13+
tag "call_sv_mt"
1314

15+
tag "bwa/index"
1416
tag "svdb/merge"
1517
tag "tabix/tabix"
1618

19+
config "./nextflow.config"
20+
21+
test("CALL_STRUCTURAL_VARIANTS - wgs") {
22+
23+
setup {
24+
run("BWA_INDEX") {
25+
script "modules/nf-core/bwa/index/main.nf"
26+
process {
27+
"""
28+
input[0] = channel.of([
29+
[id:'genome'],
30+
file(params.pipelines_testdata_base_path + 'reference/reference.fasta', checkIfExists: true)
31+
])
32+
"""
33+
}
34+
}
35+
}
36+
37+
when {
38+
workflow {
39+
"""
40+
input[0] = BWA_INDEX.out.index.collect()
41+
input[1] = channel.of([id:'justhusky'])
42+
input[2] = channel.of([[id:'gcnvcaller'], []])
43+
input[3] = channel.of([
44+
[id:'earlycasualcaiman', sample:'earlycasualcaiman', single_end:false, num_lanes:1, read_group: "'@RG\\\\tID:earlycasualcaiman\\\\tPL:illumina\\\\tSM:earlycasualcaiman'", lane:1, sex:1, phenotype:1, paternal:0, maternal:0, case_id:'justhusky'],
45+
file(params.pipelines_testdata_base_path + 'testdata/earlycasualcaiman_sorted_md.bam.bai', checkIfExists: true)
46+
])
47+
input[4] = channel.of([
48+
[id:'earlycasualcaiman', sample:'earlycasualcaiman', single_end:false, num_lanes:1, read_group: "'@RG\\\\tID:earlycasualcaiman\\\\tPL:illumina\\\\tSM:earlycasualcaiman'", lane:1, sex:1, phenotype:1, paternal:0, maternal:0, case_id:'justhusky'],
49+
file(params.pipelines_testdata_base_path + 'testdata/earlycasualcaiman_sorted_md.bam', checkIfExists: true)
50+
])
51+
input[5] = channel.of([
52+
[id:'earlycasualcaiman', sample:'earlycasualcaiman', single_end:false, num_lanes:1, read_group: "'@RG\\\\tID:earlycasualcaiman\\\\tPL:illumina\\\\tSM:earlycasualcaiman'", lane:1, sex:1, phenotype:1, paternal:0, maternal:0, case_id:'justhusky'],
53+
file(params.pipelines_testdata_base_path + 'testdata/earlycasualcaiman_sorted_md.bam', checkIfExists: true),
54+
file(params.pipelines_testdata_base_path + 'testdata/earlycasualcaiman_sorted_md.bam.bai', checkIfExists: true)
55+
])
56+
input[6] = channel.from(file(params.pipelines_testdata_base_path + 'reference/reference_chr.sizes', checkIfExists: true))
57+
input[7] = channel.of([[id:'genome'], file(params.pipelines_testdata_base_path + 'reference/reference.dict', checkIfExists: true)]).collect()
58+
input[8] = channel.of([[id:'genome'], file(params.pipelines_testdata_base_path + 'reference/reference.fasta.fai', checkIfExists: true)]).collect()
59+
input[9] = channel.of([[id:'genome'], file(params.pipelines_testdata_base_path + 'reference/reference.fasta', checkIfExists: true)]).collect()
60+
input[10] = Channel.from("\$PWD").map { dir -> [[id:'genome'], file(dir)] }
61+
input[11] = channel.value([[], []])
62+
input[12] = channel.of([15, 2, 2, 30000, 30, 0.00001, 5, 1000, 80, 10000, 5, 15])
63+
input[13] = channel.of([
64+
[id:'earlycasualcaiman', sample:'earlycasualcaiman', single_end:false, num_lanes:1, read_group: "'@RG\\\\tID:earlycasualcaiman\\\\tPL:illumina\\\\tSM:earlycasualcaiman'", lane:1, sex:1, phenotype:1, paternal:0, maternal:0, case_id:'justhusky'],
65+
file(params.pipelines_testdata_base_path + 'testdata/earlycasualcaiman_sorted_md.bam', checkIfExists: true),
66+
file(params.pipelines_testdata_base_path + 'testdata/earlycasualcaiman_sorted_md.bam.bai', checkIfExists: true)
67+
])
68+
input[14] = channel.of([[id:'genome'], file(params.pipelines_testdata_base_path + 'reference/reference_mt.fa.fai', checkIfExists: true)]).collect()
69+
input[15] = channel.of([[id:'genome'], file(params.pipelines_testdata_base_path + 'reference/reference_mt.fa', checkIfExists: true)]).collect()
70+
input[16] = Channel.from("${projectDir}/subworkflows/local/variant_evaluation/tests").map { dir -> [[id:'mt'], file(dir)] }
71+
input[17] = channel.of([[id:'ploidy'], []])
72+
input[18] = channel.of([[]])
73+
input[19] = channel.of([
74+
[id:'earlycasualcaiman', sample:'earlycasualcaiman', single_end:false, num_lanes:1, read_group: "'@RG\\\\tID:earlycasualcaiman\\\\tPL:illumina\\\\tSM:earlycasualcaiman'", lane:1, sex:1, phenotype:1, paternal:0, maternal:0, case_id:'justhusky'],
75+
[
76+
file(params.pipelines_testdata_base_path + 'testdata/earlycasualcaiman_mt_1.fastq.gz', checkIfExists: true),
77+
file(params.pipelines_testdata_base_path + 'testdata/earlycasualcaiman_mt_2.fastq.gz', checkIfExists: true)
78+
]
79+
])
80+
input[20] = channel.value(10000000)
81+
input[21] = channel.value(['manta', 'tiddit', 'cnvnator'])
82+
input[22] = true
83+
input[23] = true
84+
input[24] = 'wgs'
85+
input[25] = 407
86+
input[26] = 16081
87+
input[27] = 5763
88+
input[28] = 5730
89+
input[29] = 16569
90+
input[30] = 'MT'
91+
input[31] = 15
92+
input[32] = 0.01
93+
input[33] = true
94+
"""
95+
}
96+
}
97+
98+
then {
99+
assertAll(
100+
{ assert workflow.success },
101+
{ assert snapshot(
102+
workflow.out.tbi.collect { meta, tbi -> file(tbi).name },
103+
path(workflow.out.vcf[0][1]).vcf.summary
104+
).match() }
105+
)
106+
}
107+
}
108+
17109
test("CALL_STRUCTURAL_VARIANTS - wgs, stub") {
18110

19111
options "-stub"

subworkflows/local/call_structural_variants/tests/main.nf.test.snap

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,17 @@
11
{
2+
"CALL_STRUCTURAL_VARIANTS - wgs": {
3+
"content": [
4+
[
5+
"justhusky_sv.vcf.gz.tbi"
6+
],
7+
"VcfFile [chromosomes=[MT, 21], sampleCount=1, variantCount=115, phased=false, phasedAutodetect=false]"
8+
],
9+
"timestamp": "2026-07-03T15:59:49.244712615",
10+
"meta": {
11+
"nf-test": "0.9.5",
12+
"nextflow": "25.10.4"
13+
}
14+
},
215
"CALL_STRUCTURAL_VARIANTS - wgs, stub": {
316
"content": [
417
[

0 commit comments

Comments
 (0)