Skip to content

Commit cd0a95b

Browse files
authored
Merge pull request #1037 from drpatelh/updates
Fix #1018
2 parents e9aff1d + 5dececa commit cd0a95b

File tree

8 files changed

+28
-11
lines changed

8 files changed

+28
-11
lines changed

.github/workflows/ci.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,8 @@ jobs:
239239
strategy:
240240
matrix:
241241
parameters:
242-
- "--skip_qc --skip_alignment"
242+
- "--skip_qc"
243+
- "--skip_alignment --skip_pseudo_alignment"
243244
- "--salmon_index false --transcript_fasta false"
244245
steps:
245246
- name: Check out pipeline code

CHANGELOG.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,20 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
88
### Enhancements & fixes
99

1010
- [[#1011](https://github.com/nf-core/rnaseq/issues/1011)] - FastQ files from UMI-tools not being passed to fastp
11+
- [[#1018](https://github.com/nf-core/rnaseq/issues/1018)] - Ability to skip both alignment and pseudo-alignment to only run pre-processing QC steps.
1112
- [PR #1016](https://github.com/nf-core/rnaseq/pull/1016) - Updated pipeline template to [nf-core/tools 2.8](https://github.com/nf-core/tools/releases/tag/2.8)
1213
- [PR #1025](https://github.com/nf-core/fetchngs/pull/1025) - Add `public_aws_ecr.config` to source mulled containers when using `public.ecr.aws` Docker Biocontainer registry
1314

15+
### Parameters
16+
17+
| Old parameter | New parameter |
18+
| ------------- | ------------------------- |
19+
| | `--skip_pseudo_alignment` |
20+
21+
> **NB:** Parameter has been **updated** if both old and new parameter information is present.
22+
> **NB:** Parameter has been **added** if just the new parameter information is present.
23+
> **NB:** Parameter has been **removed** if new parameter information isn't present.
24+
1425
### Software dependencies
1526

1627
| Dependency | Old version | New version |

conf/modules.config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1137,7 +1137,7 @@ if (!params.skip_multiqc) {
11371137
// Salmon pseudo-alignment options
11381138
//
11391139

1140-
if (params.pseudo_aligner == 'salmon') {
1140+
if (!params.skip_pseudo_alignment && params.pseudo_aligner == 'salmon') {
11411141
process {
11421142
withName: '.*:QUANTIFY_SALMON:SALMON_QUANT' {
11431143
ext.args = params.extra_salmon_quant_args ?: ''

docs/usage.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,8 @@ When running Salmon in mapping-based mode via `--pseudo_aligner salmon` the enti
7171

7272
Two additional parameters `--extra_star_align_args` and `--extra_salmon_quant_args` were added in v3.10 of the pipeline that allow you to append any custom parameters to the STAR align and Salmon quant commands, respectively. Note, the `--seqBias` and `--gcBias` are not provided to Salmon quant by default so you can provide these via `--extra_salmon_quant_args '--seqBias --gcBias'` if required.
7373

74+
> **NB:** You can use `--skip_alignment --skip_pseudo_alignment` if you only want to run the pre-processing QC steps in the pipeline like FastQ, trimming etc. This will skip alignment, pseudo-alignment and any post-alignment processing steps.
75+
7476
## Quantification options
7577

7678
The current options align with STAR and quantify using either Salmon (`--aligner star_salmon`) / RSEM (`--aligner star_rsem`). You also have the option to pseudo-align and quantify your data with Salmon by providing the `--pseudo_aligner salmon` parameter.
@@ -133,7 +135,7 @@ If unique molecular identifiers were used to prepare the library, add the follow
133135

134136
Please refer to the [nf-core website](https://nf-co.re/usage/reference_genomes) for general usage docs and guidelines regarding reference genomes.
135137

136-
The minimum reference genome requirements for this pipeline are a FASTA and GTF file, all other files required to run the pipeline can be generated from these files. However, it is more storage and compute friendly if you are able to re-use reference genome files as efficiently as possible. It is recommended to use the `--save_reference` parameter if you are using the pipeline to build new indices (e.g. custom genomes that are unavailable on [AWS iGenomes](https://nf-co.re/usage/reference_genomes#custom-genomes)) so that you can save them somewhere locally. The index building step can be quite a time-consuming process and it permits their reuse for future runs of the pipeline to save disk space. You can then either provide the appropriate reference genome files on the command-line via the appropriate parameters (e.g. `--star_index '/path/to/STAR/index/'`) or via a custom config file.
138+
The minimum reference genome requirements for this pipeline are a FASTA and GTF file, all other files required to run the pipeline can be generated from these files. However, it is more storage and compute friendly if you are able to re-use reference genome files as efficiently as possible. It is recommended to use the `--save_reference` parameter if you are using the pipeline to build new indices (e.g. custom genomes that are unavailable on [AWS iGenomes](https://nf-co.re/usage/reference_genomes#custom-genomes)) so that you can save them somewhere locally. The index building step can be quite a time-consuming process and it permits their reuse for future runs of the pipeline to save disk space. You can then either provide the appropriate reference genome files on the command-line via the appropriate parameters (e.g. `--star_index '/path/to/STAR/index/'`) or via a custom config file. Another option is to run the pipeline once with `--save_reference --skip_alignment --skip_pseudo_alignment` to generate and save all of the required reference files and indices to the results directory. You can then move the reference files in `<RESULTS_DIR>/genome/` to a more permanent location and use these paths to override the relevant parameters in the pipeline e.g. `--star_index`.
137139

138140
- If `--genome` is provided then the FASTA and GTF files (and existing indices) will be automatically obtained from AWS-iGenomes unless these have already been downloaded locally in the path specified by `--igenomes_base`.
139141
- If `--gff` is provided as input then this will be converted to a GTF file, or the latter will be used if both are provided.

lib/WorkflowRnaseq.groovy

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -65,13 +65,10 @@ class WorkflowRnaseq {
6565
Nextflow.error("Invalid option: '${params.aligner}'. Valid options for '--aligner': ${valid_params['aligners'].join(', ')}.")
6666
}
6767
} else {
68-
if (!params.pseudo_aligner) {
69-
Nextflow.error("--skip_alignment specified without --pseudo_aligner...please specify e.g. --pseudo_aligner ${valid_params['pseudoaligners'][0]}.")
70-
}
7168
skipAlignmentWarn(log)
7269
}
7370

74-
if (params.pseudo_aligner) {
71+
if (!params.skip_pseudo_alignment) {
7572
if (!valid_params['pseudoaligners'].contains(params.pseudo_aligner)) {
7673
Nextflow.error("Invalid option: '${params.pseudo_aligner}'. Valid options for '--pseudo_aligner': ${valid_params['pseudoaligners'].join(', ')}.")
7774
} else {

nextflow.config

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ params {
7171
save_align_intermeds = false
7272
skip_markduplicates = false
7373
skip_alignment = false
74+
skip_pseudo_alignment = false
7475

7576
// QC
7677
skip_qc = false

nextflow_schema.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -446,6 +446,11 @@
446446
"type": "boolean",
447447
"fa_icon": "fas fa-fast-forward",
448448
"description": "Skip all of the alignment-based processes within the pipeline."
449+
},
450+
"skip_pseudo_alignment": {
451+
"type": "boolean",
452+
"fa_icon": "fas fa-fast-forward",
453+
"description": "Skip all of the pseudo-alignment-based processes within the pipeline."
449454
}
450455
}
451456
},

workflows/rnaseq.nf

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,9 @@ if (!params.skip_bbsplit && !params.bbsplit_index && params.bbsplit_fasta_list)
4343

4444
// Check alignment parameters
4545
def prepareToolIndices = []
46-
if (!params.skip_bbsplit) { prepareToolIndices << 'bbsplit' }
47-
if (!params.skip_alignment) { prepareToolIndices << params.aligner }
48-
if (params.pseudo_aligner) { prepareToolIndices << params.pseudo_aligner }
46+
if (!params.skip_bbsplit) { prepareToolIndices << 'bbsplit' }
47+
if (!params.skip_alignment) { prepareToolIndices << params.aligner }
48+
if (!params.skip_pseudo_alignment) { prepareToolIndices << params.pseudo_aligner }
4949

5050
// Get RSeqC modules to run
5151
def rseqc_modules = params.rseqc_modules ? params.rseqc_modules.split(',').collect{ it.trim().toLowerCase() } : []
@@ -799,7 +799,7 @@ workflow RNASEQ {
799799
ch_salmon_multiqc = Channel.empty()
800800
ch_pseudoaligner_pca_multiqc = Channel.empty()
801801
ch_pseudoaligner_clustering_multiqc = Channel.empty()
802-
if (params.pseudo_aligner == 'salmon') {
802+
if (!params.skip_pseudo_alignment && params.pseudo_aligner == 'salmon') {
803803
QUANTIFY_SALMON (
804804
ch_filtered_reads,
805805
PREPARE_GENOME.out.salmon_index,

0 commit comments

Comments
 (0)