Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
| `deepvariant` | 1.9.0 | 1.10.0 | nf-core update; `make_examples` now takes its flags from the model (`--checkpoint`): the ONT model is 199 wide with the new fuzzy channel, and both models call easy sites with the small model |
| `deepsomatic` | 1.7.0 | 1.10.0 | `make_examples_somatic` now takes its flags from the model (`--checkpoint`) instead of a hard-coded channel list and pileup width; the paired PacBio model is 147 wide with 9 channels. The small model is kept off explicitly (`--nocall_small_model_examples`), because the module does not pass its calls on |

- [#214](https://github.com/IntGenomicsLab/lrsomatic/pull/214) - Updated Wakhan from 0.4.4 to 0.5.0, run from `docker.io/ljwharbers/wakhan:0.5.0-histfix-1afd44d` (`oras://docker.io/ljwharbers/wakhan-sif:0.5.0-histfix-1afd44d` for Singularity/Apptainer) because no biocontainer was built for it. The image carries upstream commit 1afd44d4, which fixes the `IndexError` in `update_coverage_hist` that killed WAKHAN on some samples (KolmogorovLab/Wakhan#64). **The `wakhan/` output layout changes**: each solution is now `solution_{ploidy}_{purity}_{confidence}/` with `integer_profile.{bed,vcf,html,pdf}` (one boundary-aligned table for both haplotypes, replacing the two `*_HP_{1,2}.bed` files), `subclonal_profile.*`, `genes/genes_copynumber_states.*` and a `HiScanner_plots_data.zip` for the Wakhan web viewer; ranked solutions are `solution_rank_{n}`. Wakhan 0.5.0 no longer writes the per-chromosome `variation_plots`, `genome_copynumbers_details` plots or per-solution `loh_regions*.bed`. `LRSOMATICREPORT` now runs lrsomatic_report v1.6.1 (`ghcr.io/ljwharbers/lrsomatic-report:1.6.1`), which finds the copy-number plots in both layouts; v1.6.0 silently dropped them for 0.5.0 output. The WAKHAN stub now writes the outputs the module declares, and the version comes from `wakhan --version` (@ljwharbers).

## v1.1.0 - [2026-04-28]

### `Added`
Expand Down
101 changes: 44 additions & 57 deletions docs/output.md
Original file line number Diff line number Diff line change
Expand Up @@ -626,24 +626,28 @@ Mutational signature analysis of the PASS SNVs and indels in the phased somatic

```
├── wakhan
│ ├── {ploidy}_{purity}_{confidence}
│ │ ├── bed_output
│ ├── solution_{ploidy}_{purity}_{confidence}
│ │ ├── genes
│ │ │ ├── genes_copynumber_states.bed
│ │ │ ├── loh_regions.bed
│ │ │ ├── sample_{ploidy}_{purity}_{confidence}_HP_1.bed
│ │ │ ├── sample_{ploidy}_{purity}_{confidence}_HP_2.bed
│ │ ├── variation_plots
│ │ │ ├── chr{1-22,X,Y}_cn.html
│ │ │ ├── chr{1-22,X,Y}_cn.pdf
│ │ │ ├── CN_VARIATION_INDEX.html
│ │ ├── sample_{purity}_{ploidy}_{confidence}_genes_genome.html
│ │ ├── sample_{purity}_{ploidy}_{confidence}_genes_genome.pdf
│ │ ├── sample_{purity}_{ploidy}_{confidence}_genome_copynumbers_breakpoints.html
│ │ ├── sample_{purity}_{ploidy}_{confidence}_genome_copynumbers_breakpoints.pdf
│ │ ├── sample_{purity}_{ploidy}_{confidence}_genome_copynumbers_details.html
│ │ ├── sample_{purity}_{ploidy}_{confidence}_genome_copynumbers_details.pdf
│ │ │ ├── genes_copynumber_states.html
│ │ │ ├── genes_copynumber_states.pdf
│ │ ├── integer_profile.bed
│ │ ├── integer_profile.html
│ │ ├── integer_profile.pdf
│ │ ├── integer_profile.vcf
│ │ ├── subclonal_profile.bed
│ │ ├── subclonal_profile.html
│ │ ├── subclonal_profile.pdf
│ │ ├── subclonal_profile.vcf
│ │ ├── HiScanner_plots_data.zip
│ ├── solution_rank_{rank}
│ ├── coverage_data
│ │ ├── {0-23}_SNPS.csv
│ │ ├── {0-23}_SNPs.csv
│ │ ├── baf.csv
│ │ ├── cancer_genes_coverage.csv
│ │ ├── cn_coverage.png
│ │ ├── cn_peaks.png
│ │ ├── coverage.csv
│ │ ├── coverage_ps.csv
│ │ ├── phase_corrected_coverage.csv
│ │ ├── pileup_SNPs.csv
Expand All @@ -652,53 +656,36 @@ Mutational signature analysis of the PASS SNVs and indels in the phased somatic
│ │ ├── chr{1-22,X,Y}.pdf
│ │ ├── COVERAGE_INDEX.html
│ ├── phasing_output
│ │ ├── chr{1-22,X,Y}_phase_correction_0.html
│ │ ├── chr{1-22,X,Y}_phase_correction_1.html
│ │ ├── chr{1-22,X,Y}_phase_correction_{0.1,0.2,0.3,1,2}.html
│ │ ├── chr{1-22,X,Y}_without_phase_correction.html
│ │ ├── chr{1-22,X,Y}.pdf
│ │ ├── sample.rephased.vcf.gz
│ │ ├── sample.rephased.vcf.gz.tbi
│ │ ├── PHASE_CORRECTION_INDEX.html
│ │ ├── rephased.vcf.gz
│ │ ├── rephased.vcf.gz.csi
│ ├── snps_loh_plots
│ │ ├── chr{1-22,X,Y}_snps_loh.html
│ ├── sample_heatmap_ploidy_purity.html
│ ├── sample_heatmap_ploidy_purity.html.pdf
│ ├── sample_optimized_peak.html
│ │ ├── {sample}_genome_snps_ratio_loh.html
│ ├── {sample}_heatmap_ploidy_purity.html
│ ├── {sample}_heatmap_ploidy_purity.html.pdf
│ ├── solutions_ranks.tsv

```

| File | Description |
| ------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------- |
| `{ploidy}_{purity}_{confidence}/bed_output/genes_copynumber_states.bed` | bed file containing allele specific copy number values with coverage information |
| `{ploidy}_{purity}_{confidence}/bed_output/loh_regions.bed` | bed file containing positions of loss of heterozygosity regions |
| `{ploidy}_{purity}_{confidence}/bed_output/sample_{ploidy}_{purity}_{confidence}_HP_1.bed` | bed file containing copy number states, coverage, and SV breakpoints for haplotype 1 |
| `{ploidy}_{purity}_{confidence}/bed_output/sample_{ploidy}_{purity}_{confidence}_HP_2.bed` | bed file containing copy number states, coverage, and SV breakpoints for haplotype 2 |
| `{ploidy}_{purity}_{confidence}/variation_plots/chr{1-22,X,Y}_cn.html` | html based plotly plot of copy number and coverage for individual chromosomes |
| `{ploidy}_{purity}_{confidence}/variation_plots/chr{1-22,X,Y}_cn.pdf` | pdf based plotly plot of copy number and coverage for individual chromosomes |
| `{ploidy}_{purity}_{confidence}/variation_plots/CN_VARIATION_INDEX.html` | unclear html plot |
| `{ploidy}_{purity}_{confidence}/sample_{purity}_{ploidy}_{confidence}_genes_genome.html` | html plots of copy number variations in highlighted genes |
| `{ploidy}_{purity}_{confidence}/sample_{purity}_{ploidy}_{confidence}_genes_genome.pdf` | pdf plots of copy number variations in highlighted genes |
| `{ploidy}_{purity}_{confidence}/sample_{purity}_{ploidy}_{confidence}_genome_copynumbers_details.html` | genome-wide html copy number plots with coverage information on same axis |
| `{ploidy}_{purity}_{confidence}/sample_{purity}_{ploidy}_{confidence}_genome_copynumbers_details.pdf` | genome-wide pdf copy number plots with coverage information on same axis |
| `coverage_data/{0-23}_SNP.csv` | CSV of coverage data per chromosome |
| `coverage_data/coverage_ps.csv` | CSV of overall haplotype specific coverage data |
| `coverage_data/coverage.csv` | CSV of overall coverage data |
| `coverage_data/phase_corrected_coverage.csv` | CSV of overall phase-corrected coverage data |
| `coverage_data/pileup_SNPs.csv` | CSV of SNP pileup data |
| `coverage_plots/chr{1-22,X,Y}_cov.html` | chromosome specific html coverage plots |
| `coverage_plots/chr{1-22,X,Y}_cov.pdf` | chromosome specific pdf coverage plots |
| `coverage_plots/COVERAGE_INDEX.html` | unclear html plot |
| `phasing_output/chr{1-23,X,Y}_phase_correction_0.html` | Phase-switch error correction plot per chromosome |
| `phasing_output/chr{1-23,X,Y}_phase_correction_1.html` | Phase-switch error correction plot per chromosome |
| `phasing_output/chr{1-22,X,Y}_without_phase_correction.html` | Phase-switch error without phase correction plot per chromosome |
| `phasing_output/chr{1-22,X,Y}.pdf` | Phase-switch error correction plot |
| `phasing_output/sample_rephased.vcf.gz` | phase corrected SNP vcf file |
| `phasing_output/sample_rephased.vcf.gz.tbi` | phase corrected SNP vcf index file |
| `snps_loh_plots/chr{1-22,X,Y}_snps_loh.html` | interactive HTML plots of SNP allele frequencies and loss of heterozygosity regions per chromosome |
| `sample_heatmap_ploidy_purity.html` | heatmap html plot of purity ploidy fit |
| `sample_heatmap_ploidy_purity.html.pdf` | heatmap pdf plot of purity ploidy fit |
| `sample_optimized_peak.html` | optimization peak plot |
| `solutions_ranks.tsv` | rank of potential purity ploidy solutions |
| File | Description |
| ------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `solution_{ploidy}_{purity}_{confidence}/integer_profile.bed` | Integer copy-number segments for one purity/ploidy solution, both haplotypes on shared boundaries: coverage, copy-number state and confidence per haplotype, and the IDs of SV breakpoints in the segment |
| `solution_{ploidy}_{purity}_{confidence}/integer_profile.vcf` | The integer copy-number segments as VCF |
| `solution_{ploidy}_{purity}_{confidence}/integer_profile.html` | Interactive genome-wide plot of the integer copy-number profile with SV breakpoints (`.pdf`: static version) |
| `solution_{ploidy}_{purity}_{confidence}/subclonal_profile.*` | The same for subclonal copy-number states (`.bed`, `.vcf`, `.html`, `.pdf`) |
| `solution_{ploidy}_{purity}_{confidence}/genes/genes_copynumber_states.*` | Copy-number states of the genes of interest (`.bed`) and their plots (`.html`, `.pdf`) |
| `solution_{ploidy}_{purity}_{confidence}/HiScanner_plots_data.zip` | The solution's profiles, coverage, BAF and breakpoints bundled for the [Wakhan visualisation web viewer](https://wakhan-visualization.github.io/) |
| `solution_rank_{rank}` | The solution of that rank in `solutions_ranks.tsv` (a copy of its `solution_{ploidy}_{purity}_{confidence}` directory) |
| `coverage_data/*.csv` | Per-chromosome SNP tables, BAF, haplotype-specific and phase-corrected coverage, and SNP pileups; tumour-only runs also write `{sample}_loh_segments.csv` |
| `coverage_data/*.png` | Copy-number coverage and peak plots |
| `coverage_plots/chr{1-22,X,Y}_cov.html` | Coverage plot per chromosome (`.pdf`: static version); `COVERAGE_INDEX.html` links them |
| `phasing_output/*.html` | Phase-switch error plots per chromosome, with and without correction; `PHASE_CORRECTION_INDEX.html` links them |
| `phasing_output/rephased.vcf.gz` | Phase-corrected SNP VCF, with its `.csi` index |
| `snps_loh_plots/{sample}_genome_snps_ratio_loh.html` | SNP allele ratios and loss-of-heterozygosity regions (tumour-only runs) |
| `{sample}_heatmap_ploidy_purity.html` | Heatmap of the purity/ploidy fit (`.html.pdf`: static version) |
| `solutions_ranks.tsv` | Ranked purity/ploidy solutions; `repository_name` is the solution's directory |

</details>

Expand Down
4 changes: 2 additions & 2 deletions modules/local/lrsomaticreport/main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ process LRSOMATICREPORT {
// No conda: the image ships render_report.R itself, not just its dependencies (guard in `script:`).
// TODO: switch to bioconda `lrsomatic-report` once the recipe in ljwharbers/lrsomatic_report is merged. Version bump = these two tags.
container "${(workflow.containerEngine == 'singularity' || workflow.containerEngine == 'apptainer') && !task.ext.singularity_pull_docker_container
? 'oras://ghcr.io/ljwharbers/lrsomatic-report-sif:1.6.0'
: 'ghcr.io/ljwharbers/lrsomatic-report:1.6.0'}"
? 'oras://ghcr.io/ljwharbers/lrsomatic-report-sif:1.6.1'
: 'ghcr.io/ljwharbers/lrsomatic-report:1.6.1'}"

input:
// Every path input is optional (`[]` when skipped); tumor/normal QC stage apart because a pair shares meta.id
Expand Down
6 changes: 3 additions & 3 deletions modules/local/lrsomaticreport/tests/main.nf.test.snap
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
[
"LRSOMATICREPORT",
"lrsomatic_report",
"1.6.0"
"1.6.1"
]
],
"report": [
Expand All @@ -33,7 +33,7 @@
[
"LRSOMATICREPORT",
"lrsomatic_report",
"1.6.0"
"1.6.1"
]
]
}
Expand All @@ -50,7 +50,7 @@
[
"LRSOMATICREPORT",
"lrsomatic_report",
"1.6.0"
"1.6.1"
]
]
],
Expand Down
2 changes: 1 addition & 1 deletion modules/local/wakhan/environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,4 @@ channels:
- bioconda
dependencies:
# renovate: datasource=conda depName=bioconda/wakhan
- bioconda::wakhan=0.4.4
- bioconda::wakhan=0.5.0
Loading
Loading