Skip to content

Commit b94cbc7

Browse files
authored
Merge pull request #243 from nf-core/dev
Release 2.2.0
2 parents 0d0dc25 + dedcbe7 commit b94cbc7

File tree

182 files changed

+4394
-1918
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

182 files changed

+4394
-1918
lines changed

.github/actions/nf-test/action.yml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,13 +54,9 @@ runs:
5454
conda-solver: libmamba
5555
conda-remove-defaults: true
5656

57-
# TODO Skip failing conda tests and document their failures
58-
# https://github.com/nf-core/modules/issues/7017
5957
- name: Run nf-test
6058
shell: bash
6159
env:
62-
NFT_DIFF: ${{ env.NFT_DIFF }}
63-
NFT_DIFF_ARGS: ${{ env.NFT_DIFF_ARGS }}
6460
NFT_WORKDIR: ${{ env.NFT_WORKDIR }}
6561
run: |
6662
nf-test test \

.github/workflows/linting.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
steps:
1414
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
1515

16-
- name: Set up Python 3.12
16+
- name: Set up Python 3.13
1717
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
1818
with:
1919
python-version: "3.13"

.github/workflows/linting_comment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
runs-on: ubuntu-latest
1212
steps:
1313
- name: Download lint results
14-
uses: dawidd6/action-download-artifact@4c1e823582f43b179e2cbb49c3eade4e41f992e2 # v10
14+
uses: dawidd6/action-download-artifact@ac66b43f0e6a346234dd65d4d0c8fbb31cb316e5 # v11
1515
with:
1616
workflow: linting.yml
1717
workflow_conclusion: completed

.github/workflows/nf-test.yml

Lines changed: 26 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,5 @@
11
name: Run nf-test
22
on:
3-
push:
4-
paths-ignore:
5-
- "docs/**"
6-
- "**/meta.yml"
7-
- "**/*.md"
8-
- "**/*.png"
9-
- "**/*.svg"
103
pull_request:
114
paths-ignore:
125
- "docs/**"
@@ -25,6 +18,7 @@ concurrency:
2518

2619
env:
2720
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
21+
NFT_TAGS: "cicd"
2822
NFT_VER: "0.9.2"
2923
NFT_WORKDIR: "~"
3024
NXF_ANSI_LOG: false
@@ -35,7 +29,7 @@ jobs:
3529
nf-test-changes:
3630
name: nf-test-changes
3731
runs-on: # use self-hosted runners
38-
- runs-on=$-nf-test-changes
32+
- runs-on=${{ github.run_id }}-nf-test-changes
3933
- runner=4cpu-linux-x64
4034
outputs:
4135
shard: ${{ steps.set-shards.outputs.shard }}
@@ -58,6 +52,7 @@ jobs:
5852
NFT_VER: ${{ env.NFT_VER }}
5953
with:
6054
max_shards: 7
55+
tags: ${{ env.NFT_TAGS }}
6156

6257
- name: debug
6358
run: |
@@ -69,7 +64,7 @@ jobs:
6964
needs: [nf-test-changes]
7065
if: ${{ needs.nf-test-changes.outputs.total_shards != '0' }}
7166
runs-on: # use self-hosted runners
72-
- runs-on=$-nf-test
67+
- runs-on=${{ github.run_id }}-nf-test
7368
- runner=4cpu-linux-x64
7469
- disk=large
7570
strategy:
@@ -86,7 +81,7 @@ jobs:
8681
- isMain: false
8782
profile: "singularity"
8883
NXF_VER:
89-
- "24.04.2"
84+
- "24.10.5"
9085
- "latest-everything"
9186
env:
9287
NXF_ANSI_LOG: false
@@ -98,23 +93,40 @@ jobs:
9893
fetch-depth: 0
9994

10095
- name: Run nf-test
96+
id: run_nf_test
10197
uses: ./.github/actions/nf-test
98+
continue-on-error: ${{ matrix.NXF_VER == 'latest-everything' }}
10299
env:
103-
NFT_DIFF: ${{ env.NFT_DIFF }}
104-
NFT_DIFF_ARGS: ${{ env.NFT_DIFF_ARGS }}
105100
NFT_WORKDIR: ${{ env.NFT_WORKDIR }}
106101
with:
107102
profile: ${{ matrix.profile }}
108103
shard: ${{ matrix.shard }}
109104
total_shards: ${{ env.TOTAL_SHARDS }}
105+
tags: ${{ env.NFT_TAGS }}
106+
107+
- name: Report test status
108+
if: ${{ always() }}
109+
run: |
110+
if [[ "${{ steps.run_nf_test.outcome }}" == "failure" ]]; then
111+
echo "::error::Test with ${{ matrix.NXF_VER }} failed"
112+
# Add to workflow summary
113+
echo "## ❌ Test failed: ${{ matrix.profile }} | ${{ matrix.NXF_VER }} | Shard ${{ matrix.shard }}/${{ env.TOTAL_SHARDS }}" >> $GITHUB_STEP_SUMMARY
114+
if [[ "${{ matrix.NXF_VER }}" == "latest-everything" ]]; then
115+
echo "::warning::Test with latest-everything failed but will not cause workflow failure. Please check if the error is expected or if it needs fixing."
116+
fi
117+
if [[ "${{ matrix.NXF_VER }}" != "latest-everything" ]]; then
118+
exit 1
119+
fi
120+
fi
121+
110122
confirm-pass:
111123
needs: [nf-test]
112124
if: always()
113125
runs-on: # use self-hosted runners
114-
- runs-on=$-confirm-pass
126+
- runs-on=${{ github.run_id }}-confirm-pass
115127
- runner=2cpu-linux-x64
116128
steps:
117-
- name: One or more tests failed
129+
- name: One or more tests failed (excluding latest-everything)
118130
if: ${{ contains(needs.*.result, 'failure') }}
119131
run: exit 1
120132

@@ -133,11 +145,3 @@ jobs:
133145
echo "DEBUG: toJSON(needs) = ${{ toJSON(needs) }}"
134146
echo "DEBUG: toJSON(needs.*.result) = ${{ toJSON(needs.*.result) }}"
135147
echo "::endgroup::"
136-
137-
- name: Clean Workspace # Purge the workspace in case it's running on a self-hosted runner
138-
if: always()
139-
run: |
140-
ls -la ./
141-
rm -rf ./* || true
142-
rm -rf ./.??* || true
143-
ls -la ./

.github/workflows/release-announcements.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ jobs:
3030
bsky-post:
3131
runs-on: ubuntu-latest
3232
steps:
33-
- uses: zentered/bluesky-post-action@4aa83560bb3eac05dbad1e5f221ee339118abdd2 # v0.2.0
33+
- uses: zentered/bluesky-post-action@6461056ea355ea43b977e149f7bf76aaa572e5e8 # v0.3.0
3434
with:
3535
post: |
3636
Pipeline release! ${{ github.repository }} v${{ github.event.release.tag_name }} - ${{ github.event.release.name }}!

.nf-core.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
repository_type: pipeline
2-
nf_core_version: 3.3.1
2+
nf_core_version: 3.3.2
33
template:
44
author: Stephen Watts
55
description: A comprehensive cancer DNA/RNA analysis and reporting pipeline
@@ -8,13 +8,12 @@ template:
88
name: oncoanalyser
99
org: nf-core
1010
outdir: .
11-
version: 2.1.0
1211
skip_features:
12+
- gpu
1313
- nf-test
14+
version: 2.2.0
1415
lint:
1516
actions_ci: false
16-
multiqc_config: false
17-
nf_test_content: false
1817
files_exist:
1918
- lib/Utils.groovy
2019
- lib/WorkflowMain.groovy
@@ -23,7 +22,9 @@ lint:
2322
- assets/nf-core-oncoanalyser_logo_light.png
2423
- docs/images/nf-core-oncoanalyser_logo_dark.png
2524
- docs/images/nf-core-oncoanalyser_logo_light.png
25+
multiqc_config: false
2626
nextflow_config:
2727
- config_defaults:
2828
- params.fastp_umi_length
2929
- params.fastp_umi_skip
30+
nf_test_content: false

.pre-commit-config.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ repos:
44
hooks:
55
- id: prettier
66
additional_dependencies:
7-
- prettier@3.5.0
7+
- prettier@3.6.2
88
- repo: https://github.com/pre-commit/pre-commit-hooks
99
rev: v5.0.0
1010
hooks:

CHANGELOG.md

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

6+
## [[2.2.0](https://github.com/nf-core/oncoanalyser/releases/tag/2.2.0)] Royal Spoonbill - 2025-08-02
7+
8+
- [241](https://github.com/nf-core/oncoanalyser/pull/241) - Apply minor fixes and updates
9+
- Allow 'prepare reference' feature to be driven by samplesheet
10+
- Set minimum stringr / stringi version for CUPPA environment
11+
- Reintroduce decoy sequences for ESVEE with GRCh37 genomes
12+
- Update WiGiTS reference data paths
13+
- Improve FASTQ and longitudinal sample input handling
14+
- Fix REDUX TSV collection in SAGE append subworkflow
15+
- Update CHANGELOG.md
16+
- [235](https://github.com/nf-core/oncoanalyser/pull/235) - Publish selected command / log files
17+
- [234](https://github.com/nf-core/oncoanalyser/pull/234) - Update WiGiTS tools and reference data
18+
- [233](https://github.com/nf-core/oncoanalyser/pull/233) - Update documentation
19+
- [232](https://github.com/nf-core/oncoanalyser/pull/232) - Extend the 'prepare reference' functionality
20+
- [231](https://github.com/nf-core/oncoanalyser/pull/231) - Implement 'purity estimate' (WISP) workflow
21+
- [230](https://github.com/nf-core/oncoanalyser/pull/230) - Implement 'panel resource creation' workflow
22+
- [220](https://github.com/nf-core/oncoanalyser/pull/220) - Add reports to tower.yml
23+
- [222](https://github.com/nf-core/oncoanalyser/pull/222) - Post-release bump
24+
25+
### Software dependencies
26+
27+
| Dependency | Old version | New version |
28+
| ------------------ | ----------- | ----------- |
29+
| `AMBER` | 4.1.1 | 4.2 |
30+
| `BamTools` | 1.3 | 1.4.2 |
31+
| `bwa-plus` | 1.0.0 | - |
32+
| `bwa-mem2` | - | 2.3 |
33+
| `CHORD` | 2.1.0 | 2.1.2 |
34+
| `COBALT` | 2.0 | 2.1 |
35+
| `ESVEE` | 1.0.3 | 1.1.2 |
36+
| `ISOFOX` | 1.7.1 | 1.7.2 |
37+
| `LILAC` | 1.6 | 1.7.1 |
38+
| `LINX` | 2.0.2 | 2.1 |
39+
| `NEO` | 1.2 | 1.2.1 |
40+
| `ORANGE` | 3.8.1 | 4.1 |
41+
| `PAVE` | 1.7.1 | 1.8 |
42+
| `PURPLE` | 4.1 | 4.2 |
43+
| `REDUX` | 1.1.2 | 1.2 |
44+
| `SAGE` | 4.0 | 4.1 |
45+
| `VirusInterpreter` | 1.7 | 1.7.1 |
46+
| `WISP` | - | 1.2 |
47+
48+
### Reference data
49+
50+
| Name | Old version | New version |
51+
| ------------------------ | ----------- | ----------- |
52+
| `HMF pipeline resources` | `2.1.0--1` | `2.2.0--3` |
53+
| `HMF TSO500 resources` | `2.0.0--3` | `2.2.0--3` |
54+
55+
### Parameters
56+
57+
| Old name | New name |
58+
| ----------- | ---------------------- |
59+
| `fastp_umi` | `fastp_umi_enabled` |
60+
| `redux_umi` | `redux_umi_enabled` |
61+
| - | `purity_estimate_mode` |
62+
| - | `ref_data_types` |
63+
| - | `driver_gene_panel` |
64+
| - | `target_regions_bed` |
65+
| - | `hmftools_log_level` |
66+
667
## [[2.1.0](https://github.com/nf-core/oncoanalyser/releases/tag/2.1.0)] Peruvian Pelican - 2025-06-30
768

869
- [219](https://github.com/nf-core/oncoanalyser/pull/219) - Add metromap-style diagram for pipeline overview

README.md

Lines changed: 27 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,14 @@
55
</picture>
66
</h1>
77

8-
[![GitHub Actions CI Status](https://github.com/nf-core/oncoanalyser/actions/workflows/ci.yml/badge.svg)](https://github.com/nf-core/oncoanalyser/actions/workflows/ci.yml)
8+
[![GitHub Actions CI Status](https://github.com/nf-core/oncoanalyser/actions/workflows/nf-test.yml/badge.svg)](https://github.com/nf-core/oncoanalyser/actions/workflows/nf-test.yml)
99
[![GitHub Actions Linting Status](https://github.com/nf-core/oncoanalyser/actions/workflows/linting.yml/badge.svg)](https://github.com/nf-core/oncoanalyser/actions/workflows/linting.yml)
1010
[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/oncoanalyser/results)
1111
[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.15189386-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.15189386)
1212
[![nf-test](https://img.shields.io/badge/unit_tests-nf--test-337ab7.svg)](https://www.nf-test.com)
1313

14-
[![Nextflow](https://img.shields.io/badge/version-%E2%89%A524.04.2-green?style=flat&logo=nextflow&logoColor=white&color=%230DC09D&link=https%3A%2F%2Fnextflow.io)](https://www.nextflow.io/)
15-
[![nf-core template version](https://img.shields.io/badge/nf--core_template-3.3.1-green?style=flat&logo=nfcore&logoColor=white&color=%2324B064&link=https%3A%2F%2Fnf-co.re)](https://github.com/nf-core/tools/releases/tag/3.3.1)
14+
[![Nextflow](https://img.shields.io/badge/version-%E2%89%A524.10.5-green?style=flat&logo=nextflow&logoColor=white&color=%230DC09D&link=https%3A%2F%2Fnextflow.io)](https://www.nextflow.io/)
15+
[![nf-core template version](https://img.shields.io/badge/nf--core_template-3.3.2-green?style=flat&logo=nfcore&logoColor=white&color=%2324B064&link=https%3A%2F%2Fnf-co.re)](https://github.com/nf-core/tools/releases/tag/3.3.2)
1616
[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/)
1717
[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=docker)](https://www.docker.com/)
1818
[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/)
@@ -25,27 +25,35 @@
2525

2626
## Introduction
2727

28-
**nf-core/oncoanalyser** is a Nextflow pipeline for the comprehensive analysis of cancer genomes and transcriptomes
28+
**nf-core/oncoanalyser** is a Nextflow pipeline for the comprehensive analysis of cancer DNA and RNA sequencing data
2929
using the [WiGiTS](https://github.com/hartwigmedical/hmftools) toolkit from the Hartwig Medical Foundation. The pipeline
3030
supports a wide range of experimental setups:
3131

32-
- FASTQ, BAM, or CRAM input files
33-
- WGS (whole genome sequencing), WTS (whole transcriptome sequencing), and targeted / panel sequencing (built-in support
34-
for the [TSO500
35-
panel](https://sapac.illumina.com/products/by-type/clinical-research-products/trusight-oncology-500.html) with other
36-
panels and exome requiring [panel reference data
37-
generation](https://github.com/hartwigmedical/hmftools/blob/master/pipeline/README_TARGETED.md))
38-
- Paired tumor / normal and tumor-only sample setups, donor sample support for further normal subtraction (e.g. for
39-
patients with bone marrow transplants or other contaminants in the tumor)
32+
- FASTQ, BAM, and / or CRAM input files
33+
- WGS (whole genome sequencing), WTS (whole transcriptome sequencing), and targeted / panel sequencing<sup>1</sup>
34+
- Paired tumor / normal and tumor-only samples, and support for donor samples for further normal subtraction
35+
- Purity estimate for longitudinal samples using genomic features of the primary sample from the same patient<sup>2</sup>
4036
- UMI (unique molecular identifier) processing supported for DNA sequencing data
4137
- Most GRCh37 and GRCh38 reference genome builds
4238

39+
<sub><sup>1</sup> built-in support for the [TSO500
40+
panel](https://www.illumina.com/products/by-type/clinical-research-products/trusight-oncology-500.html) with other
41+
panels and exomes requiring [creation of custom panel reference
42+
data](https://nf-co.re/oncoanalyser/usage#custom-panels)</sub>
43+
<br />
44+
<sub><sup>2</sup> for example a primary WGS tissue biospy and longitudinal low-pass WGS ccfDNA sample taken from the
45+
same patient</sub>
46+
4347
## Pipeline overview
4448

4549
<p align="center"><img src="docs/images/oncoanalyser_pipeline.png"></p>
4650

47-
The pipeline mainly uses tools from [WiGiTS](https://github.com/hartwigmedical/hmftools), as well as some external
48-
tools. Due to the limitations of panel data, certain tools (indicated with `*` below) do not run in `targeted` mode.
51+
The pipeline mainly uses tools from [WiGiTS](https://github.com/hartwigmedical/hmftools), as well as some other external
52+
tools. There are [several workflows available](https://nf-co.re/oncoanalyser/usage#introduction) in `oncoanalyser` and
53+
the tool information below primarily relates to the `wgts` and `targeted` analysis modes.
54+
55+
> [!NOTE]
56+
> Due to the limitations of panel data, certain tools (indicated with `*` below) do not run in `targeted` mode.
4957
5058
- Read alignment: [BWA-MEM2](https://github.com/bwa-mem2/bwa-mem2) (DNA), [STAR](https://github.com/alexdobin/STAR) (RNA)
5159
- Read post-processing: [REDUX](https://github.com/hartwigmedical/hmftools/tree/master/redux) (DNA), [Picard MarkDuplicates](https://gatk.broadinstitute.org/hc/en-us/articles/360037052812-MarkDuplicates-Picard) (RNA)
@@ -63,6 +71,10 @@ tools. Due to the limitations of panel data, certain tools (indicated with `*` b
6371
- Pharmacogenomics: [PEACH](https://github.com/hartwigmedical/hmftools/tree/master/peach)
6472
- Summary report: [ORANGE](https://github.com/hartwigmedical/hmftools/tree/master/orange), [linxreport](https://github.com/umccr/linxreport)
6573

74+
For the `purity_estimate` mode, several of the above tools are run with adjusted configuration in addition to the following.
75+
76+
- Tumor fraction estimation: [WISP](https://github.com/hartwigmedical/hmftools/tree/master/wisp)
77+
6678
## Usage
6779

6880
> [!NOTE]
@@ -82,7 +94,7 @@ Launch `oncoanalyser`:
8294
```bash
8395
nextflow run nf-core/oncoanalyser \
8496
-profile <docker/singularity/.../institute> \
85-
-revision 2.1.0 \
97+
-revision 2.2.0 \
8698
--mode <wgts/targeted> \
8799
--genome <GRCh37_hmf/GRCh38_hmf> \
88100
--input samplesheet.csv \

conf/base.config

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,5 +63,6 @@ process {
6363
}
6464
withLabel: process_gpu {
6565
ext.use_gpu = { workflow.profile.contains('gpu') }
66+
accelerator = { workflow.profile.contains('gpu') ? 1 : null }
6667
}
6768
}

0 commit comments

Comments
 (0)